You are on page 1of 29

Algoritmos e Programao

Lista de Exerccios


Professor:



Nome:

CURSO: ENGENHARIA MECNICA (NOITE) 2 SEMESTRE Data: 26/09/2014





Lista de exerccios 01
1) Os programas abaixo possuem erros. Programe-os e tente compil-
los. Anote as mensagens de erro obtidas. Corrija os programas e compile-os
novamente.

a)
int main(){
printf ("Ola pessoal !!!");
system("pause");
return 0;
}


#include <stdio.h>
#include <stdlib.h>
int main(){
printf ("ola pessoal ");
system ("pause");
return (0);
}


b)
#include <stdio.h>
int main()
printf ("Boa noite!!!");
system("pause");
return 0;
}

#include <stdio.h>
#include <stdlib.h>
int main(){
printf ("Boa noite !!!");
system ("pause");
return (0);



c)
#include <stdio.h>
int main(){
printf("Esta eh uma string")
printf("Uma string eh uma seqncia de caracteres delimitada \n por aspas");
system ("pause");
return 0;
}



#include <stdlib.h>
#include <stdio.h>
int main(){
printf("Esta eh uma string");
printf("Uma string eh uma seqncia de caracteres delimitada \n por aspas");
system("pause");
return (0);
}


d)
#include <stdio.h>
Int main () {
printf("Toda varivel em C precisa ser declarada antes de ser usada.);
system ("pause");
return 0;
}

#include <stdio.h>
#include <stdlib.h>
Int main () {
printf("Toda varivel em C precisa ser declarada antes de ser usada");
system("pause");
return (0);
}






2) Faa um programa no qual so declaradas:

-Uma varivel do tipo int chamada cdigo.
-Duas variveis do tipo float chamadas altura e peso
-Uma varivel do tipo char chamada letra.

a) Inicialize essas variveis com valores compatveis com seus tipos,
usando o operador de atribuio.

b) Imprima, usando corretamente a funo printf as seguintes frases:
O meu nmero de identificao eh (cdigo)
A minha altura (altura) e meu peso eh (peso).

#include <stdio.h>
#include <stdlib.h>

int main () {


int codigo;
float altura, peso;
char letra [20]= "v";

cdigo = 654085;
altura = 1.90;
peso = 75;

printf (" meu numero de id eh , %i\n",cdigo);
printf (" meu peso eh, %f\n",peso);
printf (" minha altura eh, %f\n",altura);
printf (" a primeira letra do meu nome eh, %s\n",letra);

system ("pause");
return 0;
}
















3)Altere o programa anterior agora, ao invs de as variveis serem
inicializadas atravs da atribuio direta de valores , estas valores devem ser
fornecidos como entrada direta aos usurios, usando a funo scanf.


#include <stdio.h>
#include <stdlib.h>

int main () {
int cdigo;
float altura;
float peso;
char letra [10];

printf (" insira o numero de id...");
scanf ("%i",&cdigo);
printf (" insira o peso...");
scanf ("%f",&peso);
printf (" insira a sua altura...");
scanf ("%f",&altura);
printf (" insira a primeira letra do seu nome...");
scanf ("%s",&letra);

system ("pause");
return 0;
}


















Lista de exerccios 02
1)Escreva um programa que converte peso em gramas para peso em
Kg, dada a relao: 1 Kg = 1000g. O programa deve solicitar ao usurio que
fornea o seu peso em gramas e deve imprimir o mesmo em Kg.
Narrativo
1-Declarar variveis 2- Zerar variveis
3-Mostrar Entre com o seu peso em grama
4-Receber e armazenar em x
5-Pkg = x % 1000
6-Mostrar pkg
7-Efetuar uma Pausa no Programa
FLUXOGRAMA
















inicio
Pkg,x
entre com o
peso em gramas
x
Pkg,x=0

Pkg = x % 1000
pkg
fim
Efetuar uma pausa
no programa
1
1



2)Escreva um programa que converte altura em metros para altura em
centmetros, dada a relao: 1m = 100 cm.
Narrativo
1-Declarar variveis
2-Zerar Variveis
3-Mostrar Entre com sua altura em metro
4-Receber e armazenar em a
5-Cm = a % 100
6-Mostrar cm
7-Efetuar uma pausa no programa
Fluxograma
















inicio
cm,a
entre com sua
altura em metros
a
cm,a=0

Cm=a%100
cm
fim
1
1
Efetuar uma pausa
no programa



3)Escreva um programa que solicita ao usurio o fornecimento de seu
peso em Kg e de sua altura em m e que calcula o ndice de massa corprea do
mesmo imprimindo-o na tela.
Narrativo
1-Declarar variveis
2-Zerar Variveis
3-Mostrar Entre com seu peso em kg
4-Receber e armazenar em k
5-Mostrar Entre com sua altura em metro
6-Receber e armazenar em m
7-IMC = k/(m*m)
8-Mostrar IMC
9- Efetuar uma pausa no programa
Fluxograma













inicio
IMC,k,m
entre com seu
peso em kg
k
IMC,k,m=0
fim
entre com sua
altura em metros
m
IMC=k/(m*m)
1
1
cm
Efetuar uma pausa
no programa



4) Escreva um programa que efetua o clculo da mdia dos ndices
pluviomtricos de trs meses.
Narrativo
1-Declarar variveis
2-Zerar Variveis
3-Mostrar Entre com o ndice pluviomtrico do 1 ms
4-Receber e armazenar em m1
5-Mostrar Entre com o ndice pluviomtrico do 2 ms
6-Receber e armazenar em m2
7-Mostrar Entre com o ndice pluviomtrico do 3 ms
8-Receber e armazenar em m3
9-Media = m1+m2+m3 /3
10-Mostrar media
11-Efetuar uma pausa no programa
Fluxograma













inicio
Media,m1,m2,m3
entre com o ndice
pluviomtrico do 1
ms
m1
Media,m1,m2,m3=0
fim
Media =
m1+m2+m3 /3

1
1
mdia
entre com o ndice
pluviomtrico do 2
ms
m2
entre com o ndice
pluviomtrico do 3
ms
m3
Efetuar uma pausa
no programa



5)Escreva um programa em que solicitado ao usurio que fornea
os valores dos coeficientes a, b e c, calcula ambas as razes da equao
quadrtica e imprime os seus valores.

Narrativo
1-Declarar variveis
2-Zerar Variveis
3-Mostrar Entre com o coeficiente a
4-Receber e armazenar em a
5-Mostrar Entre com o coeficiente b
6-Receber e armazenar em b
7-Mostrar Entre com o coeficiente c
8-Receber e armazenar em c
9-Delta


10-Mostrar delta
11-X=


12-Mostrar x1
13-Mostrar x2
14- Efetuar uma pausa











Fluxograma
























inicio
delta,x1,x2,a,b,c
entre com o
coeficiente a
a
delta,x1,x2,a,b,c=0

entre com o
coeficiente b
b
entre com o
coeficiente c
c
delta=b-4*a*c

delta
X1=(-b+ delta)/(2*a)

X1
X2=(-b- delta)/(2*a)

X2
Efetuar uma pausa no
programa

fim
1
1



Lista de exerccios 03
1)Escreva um programa que determina se algum j maior de
idade. O programa deve solicitar ao usurio que fornea a sua idade e deve
imprimir:
Narrativo
1-declarar variveis
2-zerar variveis
3-mostrar" entre com a idade"
4-receber e armazenar em x
Verifique-se:x>=21 caso verdade:mostrar" voc j maior de idade"
caso falso: mostrar " voc ainda menor de idade"
5-Efetuar uma pausa no programa
Fluxograma
















inicio
x
entre com a
idade"
x
x=0

voc j maior de
idade

x>=21
voc j menor
de idade

fim
1
V
F
Efetuar uma pausa
no programa
2
2



2)Escreva um programa que solicita ao usurio que fornea a sua idade
e imprima:
Narrativo
1-declarar variveis
2-zerar as variveis
3-mostrar"entre com a idade"
4-receber e armazenar em x
5-verifique-se:x<21 caso verdade:mostrar"voc ainda menor de idade"
caso falso:verifique-se x>=21<65, caso verdade:mostrar"voc esta na flor da
idade", caso falso:mostrar" voc esta na terceira idade x>=65"
6-Efetuar uma pausa no programa

Fluxograma















inicio
x
entre com a
idade"
x
x=0

voc menor
de idade

x<21
1
V
F
voc menor
de idade

x>21<65
1
2
2
voc est na
terceira idade

fim
Efetuar uma pausa
no programa
1



3)Escreva um programa que solicita ao usurio que fornea seu peso
em Kg e sua altura em m, calcula o IMC para o mesmo e, sem seguida,
estabelece as comparaes necessrias entre o IMC calculado e os valores da
tabela acima e imprime na tela uma das frases, conforme for o caso:

Narrativo
1-declarar variveis
2-zerar variveis
3-mostrar"entre com seu peso"
4-receber e armazenar em K
5-mostrar"entre com a sua altura"
6-receber e armazenar em A
7-calcular:IMC=K/A
8-mostrar IMC
9-verificar-se:IMC<=18,5 caso verdade:mostrar"o seu peso esta na faixa
de normalidade", caso falso:verificar-se:IMC<=30, caso verdade: mostrar "voc
esta acima do seu peso normal", caso falso: IMC>30 mostrar"voc precisa
perder uns quilinhos"
10-Efetuar uma pausa no programa













Fluxograma


























inicio
IMC,K,A
entre com seu
peso"
k
x=0

voc est
abaixo do peso
normal

IMC<=18,5
1
V
F
Seu peso est
na faixa da
normalidade

IMC<=25

1
2
2
Voc precisa perder
alguns quilinhos

fim
Efetuar uma pausa
no programa
entre com sua
altura"
A
IMC
IMC=K/A

V
Voc est
acima do peso
normal

IMC<=30

1
V
F
F
1



4)Escreva um programa que solicita ao usurio que fornea o
nmero do ms de seu aniversrio e imprima:

Narrativo
1-declarar variveis
2-zerar variveis
3-mostrar" entre com o ms de seu aniversario de 1 a 12"
4-receber e armazenar em ms
5-verificar-se:ms<=3 caso verdade: mostrar"voc nasceu no vero"
caso falso:verificar-se:ms<=6
caso verdade:mostrar"voc nasceu no outono"
caso falso: verificar-se: ms<=9
caso verdade: mostrar"voc nasceu no inverno"
caso falso: ms<=12 mostrar" voc nasceu na primavera"
6-Efetuar uma pausa no programa
















Fluxograma


























inicio
ms
entre com o ms
do seu aniversrio"
ms
ms=0

voc nasceu
no vero

ms<=3
1
V
F
Voc nasceu
no Outono

ms<=6

1
fim
Efetuar uma pausa
no programa
F
Voc nasceu
no Inverno

ms<=9

1
V
V
F
ms<=12

Voc nasceu
na Primavera

1



Lista de exerccios 04

1) Uma determinada companhia area s contrata aeromoas que
preencham os seguintes requisitos:
- Ter idade igual ou superior a 24 anos.
- Ter altura igual ou superior a 1.70 m.
- Falar com fluncia 2 ou mais idiomas.
Escreva um programa que solicita ao usurio (uma candidata
aeromoa) as informaes: idade, altura e nmero de idiomas falado e imprime
se ela pode ou no ser contratada pela companhia:

a) Primeira verso: Sem fazer uso de operadores lgicos.

NARRATIVO

Mostrar digite sua idade
Receber e armazenar em idade
Mostrar digite sua altura
Receber e armazenar em altura
Mostrar quantos idiomas voc fala?
Receber e armazenar em idioma
Mostrar sua idade
Mostra idade
Mostrar sua altura
Mostrar altura
Mostrar voc falar
Mostrar idioma
Mostrar caso dados compatveis,parabns, voc esta contratada

FLUXOGRAMA







b) Segunda verso: Usando operadores lgicos.


NARRATIVO

Mostrar digite sua idade
Receber e armazenar em idade
Mostrar digite sua altura
Receber e armazenar em altura
Mostrar quantos idiomas voc fala?
Receber e armazenar em idioma
Verificar se Idade>=24&&altura>=1,70&&idioma>=2
Caso Verdade
Mostrar parabns voc esta contratada
Caso Falso
Mostrar No foi desta vez continuar tentando



FLUXOGRAMA








2) Em So Paulo, durante um determinado intervalo de horrios,
veculos cuja placa termina em:

- 1 ou 2: No podem trafegar na segunda-feira;
- 3 ou 4: No podem trafegar na tera-feira;
- 5 ou 6: No podem trafegar na quarta-feira;
- 7 ou 8: No podem trafegar na quinta-feira;
- 9 ou 0: No podem trafegar na sexta-feira;



Escreva um programa que solicita ao usurio que fornea o ltimo dgito
da placa do seu carro e imprime qual o dia da semana em que o mesmo no
pode circular. Considere a possibilidade de o valor fornecido ser invlido (por
exemplo, um nmero negativo ou um nmero maior do que 9) e imprima, neste
caso, uma mensagem: Valor invlido.

a) Primeira verso: Sem fazer uso de operadores lgicos e usando
apenas o operador relacional ==.


NARRATIVO

Mostrar digite o final da placa do seu carro
Receber e armazenar em placa
Verificar se placa==1
Caso verdade Mostrar seu veiculo no pode trafegar na Segunda Feira
Caso falso
Verificar se placa==2
Caso verdade Mostrar seu veiculo no pode trafegar na Segunda Feira
Caso falso
Verificar se placa==3
Caso verdade Mostrar seu veiculo no pode trafegar na Tera Feira
Caso falso
Verificar se placa==4
Caso verdade Mostrar seu veiculo no pode trafegar na Tera Feira
Caso falso
Verificar se placa==5
Caso verdade Mostrar seu veiculo no pode trafegar na Quarta Feira
Caso falso
Verificar se placa==6
Caso verdade Mostrar seu veiculo no pode trafegar na Quarta Feira
Caso falso
Verificar se placa==7
Caso verdade Mostrar seu veiculo no pode trafegar na Quinta Feira
Caso falso
Verificar se placa==8
Caso verdade Mostrar seu veiculo no pode trafegar na Quinta Feira
Caso falso
Verificar se placa==9
Caso verdade Mostrar seu veiculo no pode trafegar na Sexta Feira
Caso falso
Verificar se placa==0
Caso verdade Mostrar seu veiculo no pode trafegar na Sexta Feira
Caso falso
Mostrar ATENAO!!!Placa inexistente,favor verificar e digitar
novamente
Mostrar Colabore com a Cidade de SP






FLUXOGRAMA








b) Segunda verso: Sem fazer uso de operadores lgicos e usando
apenas o operador relacional <.


NARRATIVO

Mostrar digite o final da placa do seu carro
Receber e armazenar em placa
Verificar se placa<=2
Caso verdade Mostrar seu veiculo no pode trafegar na Segunda Feira
Caso falso
Verificar se placa<=4
Caso verdade Mostrar seu veiculo no pode trafegar na Tera Feira
Caso falso
Verificar se placa<=6
Caso verdade Mostrar seu veiculo no pode trafegar na Quarta Feira
Caso falso
Verificar se placa<=8
Caso verdade Mostrar seu veiculo no pode trafegar na Quinta Feira
Caso falso
Verificar se placa==9
Caso verdade Mostrar seu veiculo no pode trafegar na Sexta Feira
Caso falso
Verificar se placa==0
Caso verdade Mostrar seu veiculo no pode trafegar na Sexta Feira
Caso falso
Mostrar ATENAO!!!Placa inexistente,favor verificar e digitar
novamente
Mostrar Colabore com a Cidade de SP











FLUXOGRAMA













c) Terceira verso: Usando operadores lgicos: Apenas o operador OU
(||).


NARRATIVO

Mostrar digite o final da placa do seu carro
Receber e armazenar em placa
Verificar se placa==1
OU
placa==2
Caso verdade Mostrar seu veiculo no pode trafegar na Segunda Feira
Caso falso
Verificar se placa==3
OU
placa==4
Caso verdade Mostrar seu veiculo no pode trafegar na Tera Feira
Caso falso
Verificar se placa==5
OU
placa==6
Caso verdade Mostrar seu veiculo no pode trafegar na Quarta Feira
Caso falso
Verificar se placa==7
OU
placa==8
Caso verdade Mostrar seu veiculo no pode trafegar na Quinta Feira
Caso falso
Verificar se placa==9
OU
placa==0
Caso verdade Mostrar seu veiculo no pode trafegar na Sexta Feira
Caso falso
Mostrar ATENAO!!!Placa inexistente,favor verificar e digitar
novamente
Mostrar Colabore com a Cidade de SP












FLUXOGRAMA












d) Quarta verso: Usando operadores lgicos: Apenas o operador E
(&&).


NARRATIVO

Mostrar digite o final da placa do seu carro
Receber e armazenar em placa
Verificar se placa>0&&<3
Caso Verdade Mostrar Seu veiculo no pode trafegar na Segunda
Feira
Caso Falso
Verificar se placa>2&&<5
Caso Verdade Mostrar Seu veiculo no pode trafegar na Tera Feira
Caso Falso
Verificar se placa>4&&<7
Caso Verdade Mostrar Seu veiculo no pode trafegar na Quarta Feira
Caso Falso
Verificar se placa>6&&<9
Caso Verdade Mostrar Seu veiculo no pode trafegar na Quinta Feira
Caso Falso
Verificar se placa==9
Caso verdade Mostrar seu veiculo no pode trafegar na Sexta Feira
Caso falso
Verificar se placa==0
Caso verdade Mostrar seu veiculo no pode trafegar na Sexta Feira
Caso falso
Mostrar ATENAO!!!Placa inexistente,favor verificar e digitar
novamente
Mostrar Colabore com a Cidade de SP











FLUXOGRAMA










3) Sabendo-se que, quanto ao comprimento dos seus lados, um tringulo se
classifica em:
Eqiltero: Tringulo cujos comprimentos dos trs lados so iguais entre si.
Issceles: Tringulo que possui dois lados de comprimentos iguais.
Escaleno: Tringulo cujos comprimentos de seus trs lados so diferentes
entre si.
Dados trs valores (a serem fornecidos pelo usurio) verificar se um tringulo
eqiltero, isscele, ou escaleno e imprimir o resultado.

NARRATIVO

MostrarQual o tipo de triangulo voc procura?
Mostrar Digite o lado A
Receber e armazenar em A
Mostrar Digite o lado B
Receber e armazenar em B
Mostrar Digite o lado C
Receber e armazenar em C
Verificar se A==B&&A==C&&C==B
Caso Verdade
Mostrar Estes valores correspondem ao Triangulo Eqiltero,os trs lados so
iguais
Caso falso
Verificar se A|=B&&A|=C&&C|=B
Caso Verdade Mostrar Este valores correspondem ao Triangulo Escaleno,os
trs lados so diferentes
Caso Falso
Verificar se A==B&&A|=C
OU
A==C&&A|B
OU
C==B&&C|=A
Mostrar Estes Valores correspondem ao Triangulo Issceles,os dois lados so
iguais





FLUXOGRAMA