Prévia do material em texto
ALGORITMOS
PROFESSORA: GELLARS TAVARES
LISTA 3 PÁGINA:1
EXERCÍCIOS: SE / CASO(ESCOLHA)
“Eu ouço e esqueço, eu vejo e me lembro, mas fazendo é que eu aprendo.” Confúcio
3) Construir um algoritmo que leia dois números e efetue a adição. Caso o valor somado seja maior ou igual
a 10, este deverá ser apresentado somando-se a ele mais 5, caso o valor somado não seja maior ou igual a
10, este deverá ser apresentado subtraindo-se 7.
algoritmo teste #include <iostream>
inteiro V1, V2, SOMA; using namespace std;
inicio int main()
escreva"Digite valor: "; {
leia V1; int v1, v2, soma;
escreva"Digite valor: "; cout<<"Digite valor: ";
leia V2; cin>>v1;
SOMA ← V1 + V2; cout<<"Digite outro valor: ";
se (soma >= 10) cin>>v2;
escreva soma + 5; soma = v1 + v2;
senão if (soma >= 10)
escreva soma - 7; cout << soma + 5<<" \n";
fim else
cout << soma - 7<<" \n";
system("pause");
return 0;
}
4) Entrar com um número e imprimir uma das mensagens: par ou ímpar.
algoritmo parimpar #include <iostream>
inteiro v; using namespace std;
inicio int main()
escreva “Digite valor: “; {
leia v; int v;
se ( v % 2 == 0) cout<<"Digite valor: ";
escreva “e par”; cin>>v;
senão if (v % 2 == 0)
escreva “e impar”; cout << "e par \n";
fim else
cout << "e impar \n";
system("pause");
return 0;
}
6) Entrar com um número e informar se ele é divisível por 3 e por 7.
algoritmo divisivel #include <iostream>
inteiro v; using namespace std;
inicio int main()
escreva “Digite valor: “; {
leia v; int v;
se ( v % 3 == 0 e v % 7 == 0) cout<<"Digite valor: ";
escreva “e divisivel por 3 e
7”;
cin>>v;
senão if (v % 3 == 0 && v % 7 == 0)
escreva “não e divisivel por
3 e 7”;
cout << "e divisivel por 3 e 7 \n";
fim else
cout << "não e divisivel por 3 e 7 \n";
system("pause");
return 0;
ALGORITMOS
PROFESSORA: GELLARS TAVARES
LISTA 3 PÁGINA:2
}
8) Construir um algoritmo que indique se o número digitado está compreendido entre 20 e 90 ou não.
algoritmo intervalo #include <iostream>
inteiro v; using namespace std;
inicio int main()
escreva “Digite valor: “; {
leia v; int v;
se ( v >= 20 e v <= 90) cout<<"Digite valor: ";
escreva “esta entre 20 e 90”; cin>>v;
senão if (v >= 20 && v <= 90)
escreva “não esta entre 20 e
90”;
cout <<"valor esta entre 20 e 90 \n";
fim else
cout <<"valor nao esta entre 20 e 90 \n";
system("pause");
return 0;
}
21) Entrar com três números e imprimir o maior número (suponha números diferentes).
algoritmo maiordetres #include <iostream>
inteiro v1,v2,v3; using namespace std;
inicio int main()
escreva"primeiro valor: "; {
leia v1; int v1, v2, v3;
escreva"segundo valor: "; cout<<"Digite primeiro valor: ";
leia v2; cin>>v1;
escreva"terceiro valor: "; cout<<"Digite segundo valor: ";
leia v3; cin>>v2;
se (v1 > v2 e v1 > v3) cout<<"Digite terceiro valor: ";
escreva "Maior = ",v1"; cin>>v3;
senão if (v1 > v2 && v1 > v3)
se (v2 > v3) cout << "Maior = "<<v1<<"\n";
escreva "Maior = ",v2; else
senão if (v2 > v3)
escreva"Maior = ",v3; cout << "Maior = "<<v2<<"\n";
fim else
cout << "Maior = "<<v3<<"\n";
system("pause");
return 0;
}
24) Entrar com três números e armazená-los em três variáveis com os seguintes nomes: maior,
intermediário e menor (suponha números diferentes).
algoritmo maiorintermenor #include <iostream>
real a,b,c,maior,interm,menor; using namespace std;
inicio int main()
escreva"primeiro numero: "; {
leia a; float a, b, c, maior, intermediario, menor;
escreva"segundo numero: "; cout<<"Digite primeiro numero: ";
leia b; cin>>a;
escreva”terceiro numero: "; cout<<"Digite segundo numero: ";
leia c; cin>>b;
se( a > b) cout<<"Digite terceiro numero: ";
se( c > a) cin>>c;
{ if ( a > b)
maior ← c; if ( c > a)
ALGORITMOS
PROFESSORA: GELLARS TAVARES
LISTA 3 PÁGINA:3
interm ← a; {
menor ← b; maior = c;
} intermediario = a;
senão menor = b;
se( c > b) }
{ else
maior ← a; if ( c > b)
interm ← c; {
menor ← b; maior = a;
} intermediario = c;
senão menor = b;
{ }
maior ← a; else
interm ← b; {
menor ← c; maior = a;
} intermediario = b;
senão menor = c;
se ( c > b) }
{ else
maior ← c; if ( c > b)
interm ← b; {
menor ← a; maior = c;
} intermediario = b;
senão menor = a;
se( c > a) }
{ else
maior ← b; if ( c > a)
interm ← c; {
menor ← a; maior = b;
} intermediario = c;
senão menor = a;
{ }
maior ← b; else
interm ← a; {
menor ← c; maior = b;
} intermediario = a;
escreva"MENOR = ",menor; menor = c;
escreva"INTERMEDIARIO =
",interm;
}
escreva"MAIOR = ",maior; cout<<"MENOR = "<<menor<<"\n";
fim cout<<"INTERMEDIARIO = "<<intermediario<<"\n";
cout<<"MAIOR = "<<maior<<"\n";
system("pause");
return 0;
}
26) Ler três números e imprimir se eles podem ou não serem lados de um triângulo.
algoritmo triangulo #include <iostream>
real a,b,c; using namespace std;
inicio int main()
escreva"primeiro numero: "; {
leia a; float a, b, c;
escreva"segundo numero: "; cout<<"Digite primeiro numero: ";
leia b; cin>>a;
escreva"terceiro numero: "; cout<<"Digite segundo numero: ";
ALGORITMOS
PROFESSORA: GELLARS TAVARES
LISTA 3 PÁGINA:4
leia c; cin>>b;
se ( a < b + c e b < a + c
e c < a + b)
cout<<"Digite terceiro numero: ";
escreva"Podem ser lados
de um triangulo";
cin>>c;
senão if (a < b + c && b < a + c && c < a + b)
escreva"Não podem ser
lados de um triangulo";
cout<<"Podem ser lados de um triangulo\n”;
else
fim cout<<"Não podem ser lados de um triangulo
\n";
system("pause");
return 0;
}
27) Ler três números, possíveis lados de um triângulo e imprimir a classificação segundo os lados.
algoritmo classificacaotriangulo #include <iostream>
real a,b,c,maior,lados; #include<cmath>
inicio using namespace std;
escreva"primeiro numero: "; int main()
leia a; {
escreva"segundo numero: "; float a, b, c, maior, lados;
leia b; cout<<"digite primeiro numero: ";
escreva"terceiro numero: "; cin>>a;
leia c; cout<<"digite segundo numero: ";
se ( a < b + c e b < a + c e c
< a + b)
cin>>b;
{ cout<<"digite terceiro numero: ";
se ( a > b e a > c) cin>>c;
{ if ( a < b + c && b < a + c && c < a + b)
maior ← a; {
lados ← pow(b,2) + pow(c,2); if ( a > b && a > c)
} {
senão maior = a;
se ( b > c) lados = pow(b,2) + pow(c,2);
{ }
maior ← b; else
lados ← pow(a,2)+pow(c,2); if ( b > c)
} {
senão maior = b;
{ lados = pow(a,2) + pow(c,2);
maior ← c; }
lados ← pow(a,2)+pow(b,2); else
} {
se(pow(maior,2) == lados ) maior = c;
escreva"Triangulo
Retangulo”;
lados = pow(a,2) + pow(b,2);
senão }
se(pow(maior,2) > lados) if ( pow(maior,2) == lados )
escrevaTriangulo Obtusangulo";
cout<<"Triangulo Retangulo \n";
senão else
Escreva”Triangulo Acutangulo”;
if ( pow(maior,2) > lados )
} cout<<"Triangulo Obtusangulo \n";
senão else
ALGORITMOS
PROFESSORA: GELLARS TAVARES
LISTA 3 PÁGINA:5
escreva "as medidas não
formam um triangulo";
cout<<"Triangulo Acutangulo \n";
}
fim else
cout<< "as medidas nãoformam um
triangulo \n";
system("pause");
return 0;
}
28) Ler três números, possíveis lados de um triângulo e imprimir a classificação segundo os ângulos.
algoritmo triangulo #include <iostream>
real a,b,c;
inicio using namespace std;
escreva “primeiro numero: "; int main()
leia a; {
escreva"segundo numero: "; float a, b, c;
leia b; cout<<"digite primeiro numero: ";
escreva"terceiro numero: "; cin>>a;
leia c; cout<<"digite segundo numero: ";
se (a > b + c e b > a + c e
c > a + b)
cin>>b;
escreva"as medidas não formam
um triangulo";
cout<<"digite terceiro numero: ";
senão cin>>c;
se (a == b e a == c) if (a > b + c && b > a + c && c > a + b)
escreva"triangulo equilatero"; cout<<"as medidas não formam um triangulo
\n";
senão else
se (a == b || a == c ||
b == c)
if (a = b && a = c)
escreva"triangulo
isoscele";
cout<<"triangulo equilatero \n";
senão else
escreva"triangulo
escaleno";
if (a = b || a = c || b = c)
cout<<"triangulo isosceles \n";
fim else
cout<<"triangulo escaleno \n";
system("pause");
return 0;
}
63) Entrar com o valor de X e imprimir Y:
1 , s e x < = 1
2 , s e 1 < x < = 2
x , s e 2 < x < = 3
x , s e x > 3
2
3
⎧
⎨
⎪⎪
⎩
⎪
⎪
Y = f (x)
algoritmo funcao #include <iostream>
real x,y; #include<cmath>
inicio using namespace std;
escreva"digite numero: "; int main()
ALGORITMOS
PROFESSORA: GELLARS TAVARES
LISTA 3 PÁGINA:6
leia x; {
se ( x <= 1)
escreva"Y = 1"; float x, y;
senão cout<<"digite numero: ";
se ( x > 1 e x <= 2) cin>>x;
escreva"Y = 2"; if ( x <= 1)
senão cout<<"Y = 1 \n";
se ( x >2 e x <= 3) else
escreva"Y = ",pow(x,2); if ( x > 1 && x <= 2)
senão cout<<"Y = 2 \n";
escreva"Y = ",pow(x,3); else
if ( x >2 && x <= 3)
fim cout<<"Y = "<<pow(x,2) <<"\n";
else
cout<<"Y = "<<pow(x,3)<<"\n";
system("pause");
return 0;
}
66) Faça um algoritmo que possa imprimir o menu abaixo:
1 – solteiro(a)
2 – desquitado(a)
3 – casado(a)
4 – divorciado(a)
5 – viúvo(a)
OPCAO:
O usuário deverá selecionar uma das opções, digitando um número e este
deverá escrever o estado civil da pessoa. Emitir mensagem de erro caso seja
escolhida uma opção inexistente.
algoritmo menu #include <iostream>
inteiro OPCAO; using namespace std;
inicio int main()
escreva “SOLTEIRO(a)“; {
escreva “DESQUITADO(a)“; int opcao;
escreva “CASADO(A)“; cout<<“SOLTEIRO(a)\n“;
escreva “DIVORCIADO(a)“; cout<<“DESQUITADO(a) \n“;
escreva “VIUVO(A)“; cout<<“CASADO(A)\n“;
leia OPCAO; cout<<“DIVORCIADO(a) \n“;
escolha (OPCAO) cout<<“VIUVO(A) \n“;
caso 1:escreva“SOLTEIRO(a)“;
pare;
cin>>opcao;
caso 2:escreva“DESQUITADO(a)“;
pare;
switch (opcao)
{
caso 3:escreva“CASADO(A)“;
pare;
case 1:cout<<“SOLTEIRO(a)\n“; break;
caso 4:escreva“DIVORCIADO(a)“;
pare;
case 2:cout<<“DESQUITADO(a)\n“; break;
caso 5:escreva“VIUVO(A)“;
pare;
case 3:cout<<“CASADO(A) \n“; break;
senão case 4:cout<<“DIVORCIADO(a) \n“; break;
escreva “OPCAO INVALIDA”; case 5:cout<<“VIUVO(A) \n“; break;
fim escolha; default : cout<<“OPCAO INVALIDA \n”;
fim }
system("pause");
return 0;
}
ALGORITMOS
PROFESSORA: GELLARS TAVARES
LISTA 3 PÁGINA:7
78) Sabe-se que uma determinada equipe de natação possui uma empresa que patrocina o pagamento do
salário de seus nadadores e, além disso, paga um valor adicional ao salário mensal em função da
produtividade de cada nadador. A produtividade é paga de acordo com a tabela:
CLASSE NÍVEL VALOR ADICIONAL
1 EXCELENTE 50%
2 BOM 40%
3 MÉDIO 30%
4 REGULAR 20%
Elabore um algoritmo (ou programa em C++) que leia o salário e o código da classe do nadador, calcule e
imprima o seu salário final.
algoritmo menu #include <iostream>
inteiro cod; using namespace std;
real sal int main()
inicio {
escreva “Digite salario: “; int cod;
leia sal; float sal;
escreva “1 – EXCELENTE “;
escreva “2 – BOM “; cout<”Digite salario: “;
escreva “3 – MEDIO “; cin>>leia sal;
escreva “4 – REGULAR “; cout<<”1 – EXCELENTE \n“;
escreva “ESCOLHA UMA CLASSE: “; cout<<”2 – BOM \n“;
leia cod; cout<<”3 – MEDIO \n“;
escolha (cod) cout<<”4 – REGULAR \n“;
caso 1:
escreva”SALARIO”,sal+sal*0.5;
cout<<”ESCOLHA UMA CLASSE: “;
pare; cin>>cod;
caso 2:
escreva”SALARIO”,sal+sal*0.4;
switch (cod) {
pare; case 1: cout<<”SALARIO”<<sal+sal*0.5<<”\n”;
caso 3:
escreva”SALARIO”,sal+sal*0.3;
break;
pare; case 2:
cout<<”SALARIO”<<sala+sal*0.4<<”\n”;
caso 4:
escreva”SALARIO”,sal+sal*0.2;
break;
pare; case 3:
cout<<”SALARIO”<<sala+sal*0.3<<”\n”;
senão break;
escreva “OPCAO INVALIDA”; case 4:cout<<”SALARIO”<<sala+sal*0.2<<”\n”;
fim escolha; break;
fim default : cout<<”OPCAO INVALIDA \n”;
}
system("pause");
return 0;
}