Você está na página 1de 7

Aluno: Flávio César Soares de Oliveira

Curso: Engenharia Elétrica

Disciplina: Algoritmo e Programação

Questões Sorteadas: 29 e 52

29) Imprima o padrão b, da figura abaixo, usando for.

b)
*
***
*****
*******
*********
***********
*************

Programa-fonte
#include <stdio.h>

int main(){
int i,a,b,c=0;

for(i=0;i<7;i++){

for(a=0;a<6-i;a++){
printf(" ");
}
for(b=-1;b<i+c;b++){
printf("*");
}
c++;
printf("\n");
}
}
Dicionário de dados

Variável Descrição Tipo de Dado Valor Inicial EPS

i Índice int 0 E

a Índice int 0 P,S

b Índice int -1 P,S

c Índice int 0 P,S

Imagens da Execução

Descrição linha por linha

Linha Instrução Descrição


Inclui a biblioteca stdio.h
1 #include <stdio.h> para usar as funções
printf() e scanf()
Função principal do
2 int main() programa; sem parâmetro
e retorn int
Início do bloco da função
3 {
main e início do programa
Declara i, a, b, c como
4 int i,a,b,c=0; valores que entrarão no
programa
Permite que um certo
trecho de programa seja
5 for(i=0;i<7;i++){ executado um
determinado número de
vezes
Para o a=0 e, também, o a
6 for(a=0;a<6-i;a++){ ser menor que 6-i;
incremento pré-fixado
Com as informações
7 printf(" "); acima, imprime texto com
vazio
Para o b igual a -1 e,
8 for(b=-1;b<i+c;b++){ também, b menor que i+c;
incremento pré-fixado
Com as informações
9 printf("*") acima, imprime texto com
o asterisco (*)
10 } Fim do bloco da função for

Imprime uma nova linha


11 printf("\n")
para o programa
Fim do bloco para a
12 }
função int
Fim do bloco da função
13 }
main e fim do programa

52) Faça um programa que receba a idade, a altura e o peso de cinco


pessoas, calcule e mostre:
a) a quantidade de pessoas com idade superior a 50 anos;
b) a média das alturas das pessoas com idade entre 10 e 20 anos;
c) a porcentagem de pessoas com peso inferior a 40 kg entre todas as
pessoas analisadas.

Programa-fonte
#include <stdio.h>
int main()
{
int idade, i=1, continuar=1, idadeSup50=0, numPessoas10e20=0,
contadorDePessoas=0;
float altura, peso, pesoMenor40=0.0, somaAlt10e20=0.0;

while(continuar)
{
printf("\tPessoa %d.\n\nIdade: ", i);
scanf("%d", &idade);
printf("Altura: ");
scanf("%f", &altura);
printf("Peso: ");
scanf("%f", &peso);
if( idade > 50 )
idadeSup50++;
if( idade >= 10 && idade <= 20 )
{
somaAlt10e20 += altura;
numPessoas10e20++;
}
if( peso < 40 )
pesoMenor40++;

contadorDePessoas++;
i++;

printf("\n\nDeseja continuar lendo dados das pessoas?");


printf("\nDigite 1 p/ continuar ou 0 p/ finalizar\n");
scanf("%d", &continuar);
system("cls || clear");
}
printf("\n\t\tRESULTADO:\n\nQtd. de pessoa com idade superior a 50: %d",
idadeSup50);
if( numPessoas10e20 == 0 )
numPessoas10e20 = 1;
printf("\nMedia das alturas de pessoas entre 10 e 20 anos: %.2f",
somaAlt10e20/numPessoas10e20);
printf("\nPorc. de pess. c/ peso inf. a 40 kg: %.2f%%\n\n",
pesoMenor40*100/contadorDePessoas);
getch();
}
Dicionário de dados

Variável Descrição Tipo de Dado Valor Inicial EPS

PS

Plano de Testes
Peso Altura Idade Resposta

Pessoa 1 45 180 60
Pessoa 2 70 170 70
Quantidade de pessoas: 1
Pessoa 3 21 176 85
Média das alturas: 152,00

Pessoa 4 16 152 75 Porcentagem de pessoas: 0,00%

Pessoa 5 47 170 80

Imagens da Execução

Descrição linha por linha


Linha Instrução Descrição
Inclui a biblioteca
stdio.h para usar as
1 #include <stdio.h>
funções printf() e
scanf()
Função principal do
2 int main()
programa
Início do bloco da
3 { função main e início
do programa
int idade, i=1, continuar=1, Declara local, aloca
idadeSup50=0, espaço de memória
4
numPessoas10e20=0, para variável de tipo
contadorDePessoas=0 int (inteiro)
Declara local, aloca
float altura, peso,
espaço de memória
5 pesoMenor40=0.0,
para variável do tipo
somaAlt10e20=0.0
float
Declaração para
6 while(continuar) que o programa
continue
printf("\tPessoa %d.\n\nIdade: ", Imprime texto para
7
i) informação de idade

8 scanf("%d", &idade); Lê o valor da idade

Imprime o valor da
9 printf("Altura: ");
altura

10 scanf("%f", &altura); Lê o valor da altura

Imprime o valor do
11 printf("Peso: ");
peso

12 scanf("%f", &peso); Lê o valor do peso

Se a idade for maior


13 if( idade > 50 )
que 50
Incremento para
14 idadeSup50++;
idade maior que 50
Se a idade for maior
15 if( idade >= 10 && idade <= 20 ) ou igual a 10, ou
menor igual a 20
Soma da altura e
16 somaAlt10e20 += altura;
idade
Incremento de
17 numPessoas10e20++; pessoas de 10 e 20
anos
Se o peso for menor
18 if( peso < 40 )
que 40
Incremento de peso
19 pesoMenor40++
menor que 40
Imprime texto
printf("\n\nDeseja continuar “Deseja continuar
20
lendo dados das pessoas?") lendo dados das
pessoas?")
Imprime texto “Digite
printf("\nDigite 1 p/ continuar ou
21 1 p/ continuar ou 0
0 p/ finalizar\n")
p/ finalizar”
Lê a função de
22 scanf("%d", &continuar)
continuar
Invocar um
23 system("cls || clear")
comando
Imprime o resultado
printf("\n\t\tRESULTADO:\n\nQtd
das pessoas com
24 . de pessoa com idade superior
idade superior a 50
a 50: %d", idadeSup50)
anos
Se o número de
if( numPessoas10e20 == 0 )
pessoas de 10 e 20
25 numPessoas10e20 = 1
anos forem iguais a
0

printf("\nMedia das alturas de


Imprime o valor da
pessoas entre 10 e 20 anos:
média das alturas da
26 %.2f",
pessoas entre 10 e
somaAlt10e20/numPessoas10e
20 anos
20)

printf("\nPorc. de pess. c/ peso Imprime o valor da


inf. a 40 kg: %.2f%%\n\n", porcentagem de
27
pesoMenor40*100/contadorDeP pessoas com peso
essoas) inferior a 40 kg

Lê o caractere do
28 getch()
final do programa

Fim do bloco da
30 } função main e fim do
programa

Você também pode gostar