Buscar

Exercícios estruturas de repetição

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 17 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 17 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 17 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

1- Supondo n1 e n2 as notas bimestrais de um aluno, podemos avaliar a sua situação quanto a aprovação, nesse caso, obtida atingindo-se média igual ou superior a 7.
#include <stdio.h>
 void main ()
 {
 float n1, n2, media, m, mediac;
 int i;
 
 printf("digite o valor de n1: \n");
 scanf("%f", &n1);
 printf("digite o valor de n2: \n");
 scanf("%f", &n2);
 media = ( n1 + n2 ) / 2;
 m = m + media;
 if ( media >= 7)
 printf("aprovado\n");
 else
 printf("reprovado\n");
 
 }
2- Considere receber a média de 50 alunos e obter a média anual da classe.
#include <stdio.h>
 void main ()
 {
 float n1, n2, media, m, mediac;
 int i;
 for (i= 1 ; i <= 50 ; i++ )
 {
 printf("digite o valor de n1: \n");
 scanf("%f", &n1);
 printf("digite o valor de n2: \n");
 scanf("%f", &n2);
 media = ( n1 + n2 ) / 2;
 m = m + media;
 if ( media >= 7)
 printf("aprovado\n");
 else
 printf("reprovado\n");
 }
 mediac = m / 50;
 printf("media da classe:\n %0.2f", mediac);
 }
3- Considerar fazer o mesmo cálculo do exercício 2, porém, para uma quantidade indeterminada de alunos. Considere como finalizador o valor -1.
#include <stdio.h>
 void main ()
 {
 float n1, n2, media, m, mediac;
 int i, p;
 for (i= 1 ; i != -1 ; i++ )
 {
 printf("digite o valor de n1: \n");
 scanf("%f", &n1);
 printf("digite o valor de n2: \n");
 scanf("%f", &n2);
 media = ( n1 + n2 ) / 2;
 m = m + media;
 if ( media >= 7)
 {
 printf("situacao: aprovado\n");
 }
 else
 {
 printf("situacao: nao aprovado\n");
 }
 mediac = m / i;
 printf("media da classe: %0.2f\n", mediac);
 printf("digite 0 para finalizar ou qualquer outro valor para continuar: \n ");
 scanf("%d", &p);
 if (p == 0 )
 break;
 }
 }
4- Faça um algoritmo que calcule a média aritmética de um conjunto de números pares que forem fornecidos pelo usuário. o valor de finalização será a entrada do número 0. Observe que nada impede que o usuário forneça quantos números ímpares ele quiser, porém, estes valores não poderão ser levados em consideração para o cálculo da média.
#include <stdio.h>
 void main ()
 {
 int n, acm = 0, cont = 0, q ,r ;
 float med;
 do
 {
 printf("digite um numero inteiro:\n");
 scanf("%d", &n);
 q = n / 2;
 r = n - (2*q);
 if ( r == 0)
 {
 acm = acm + n;
 cont = cont + 1;
 med = acm/cont;
 printf("media:%0.2f\n\n", med);
 }
 } while ( n != 0);
 }
5- Faça um algoritmo que exiba todos os números ímpares existentes entre dois números inteiros informados pelo usuário.
#include <stdio.h>
 void main ()
 {
 int n1, n2, i;
 printf("digite o numero inteiro de menor valor:");
 scanf("%d", &n1);
 printf("digite o numero inteiro de maior valor:");
 scanf("%d", &n2);
 for (i = n1; i <= n2 ; i++ )
 {
 if (i % 2 != 0)
 printf("%d\n", i);
 }
 }
6- Imagine um brincadeira entre dois amigos, no qual um pensa em um número e o outro deve tentar acertar este número chutando um valor. Como dica, a cada tentativa é dito se o chute foi alto, maior que o valor definido, ou se o chute foi baixo, menor que o valor definido. Faça um algoritmo dentro deste contexto, que leia um número e os chutes, ao final, quando o amigo chutar o valor correto, mostrar quantas tentativas foram necessária para descobrir o número. 
#include <stdio.h>
 void main ()
 {
 int n, p, i=0;
 printf("digite o numero a ser advinhado:");
 scanf("%d", &n);
 do
 {
 printf("qual eh o numero:");
 scanf("%d", &p);
 i= i + 1;
 if (p > n)
 printf("valor maior que definido\n");
 else if (p < n)
 printf("valor menor que definido\n");
 } while ( p!= n);
 printf("\nacertou!\n");
 printf("numero de tentativas: %d ", i);
 }
7- Construa um algoritmo que, dado um conjunto de valores inteiros e positivos, determine qual o menor valor e qual o maior valor do conjunto de números digitados. O final do conjunto de valores é conhecido pelo valor -1, que não deve ser considerado.
#include <stdio.h>
 void main ()
 {
 int p ,g , i=0,n;
 printf("digite o numero sequencia em ordem:\n");
 scanf("%d", &n);
 p=n;
 g=n;
 do
 {
 if (n > g)
 {
 g=n;
 }
 if (n < p && n >= 0)
 {
 p=n;
 }
 printf("digite o numero da sequencia em ordem:\n");
 scanf("%d", &n);
 } while ( n != -1);
 printf("maior valor:%d\nmenor valor:%d", g,p);
 }
8- Em um eleição presidencial existem quatro candidatos. Os votos são informados por código. Os dados utilizados para escrutinagem obedecem a seguinte codificação:
· 1,2,3 e 4 corresponde ao voto do respectivo candidato.
· 5, voto nulo
· 6,voto em branco
· 0, finalizador do conjunto de votos.
Elabore um algoritmo que calcule e escreva.
a) O total de votos para cada candidato e seu percentual sobre o total de votos.
b) O total de votos nulos e seu percentual sobre o total de votos.
c) O total de votos em branco e seu percentual sobre o total.
#include <stdio.h>
 void main ()
 {
 int c1=0, c2= 0, c3=0, c4=0, vb=0, vn=0, voto, v=0, x;
 float p1, p2, p3, p4, pb, pn;
 do
{
 printf("1-blue\n2-red\n3-pink\n4-black\n5-brancos\n6-nulos\n");
 printf("digite o numero correspondente ao seu voto:\n");
 scanf("%d", &voto);
 v= v+1;
 switch (voto)
 {
 case 0:
 printf ("votacao encerrada\n");
 break;
 case 1:
 printf ("voce votou em blue\n");
 c1 = c1 +1;
 break;
 case 2:
 printf ("voce votou em red\n");
 c2 = c2 +1;
 break;
 case 3:
 printf ("voce votou em pink\n");
 c3 = c3 +1;
 break;
 case 4:
 printf ("voce votou wm black\n");
 c4 = c4 +1;
 break;
 case 5:
 printf ("voce votou em branco\n");
 vb = vb +1;
 break;
 case 6:
 printf ("voce votou em nulo\n");
 vn = vn + 1 ;
 break;
 }
}while(voto != 0);
 v = v -1;
 p1= c1*100/v;
 p2= c2*100/v;
 p3= c3*100/v;
 p4= c4*100/v;
 pb= vb*100/v;
 pn= vn*100/v;
 printf("1-blue:%d\n2-red:%d\n3-pink:%d\n4-black:%d\n5-brancos:%d\n6-nulos:%d\n", c1, c2, c3, c4, vb, vn );
 printf("numero total de votos:%d\n", v);
 printf("1-blue:%0.2f\n2-red:%0.2f\n3-pink:%0.2f\n4-black:%0.2f\n5-brancos:%0.2f\n6-nulos:%0.2f\n", p1, p2, p3, p4, pb, pn );
 }
 
9- Faça um algoritmo que receba a média anual de cada aluno de uma classe. Ao final mostre quantos alunos foram aprovados e quantos alunos foram reprovados. Considere média maior igual a 7 para aprovação e como critério de parada o valor -1 atribuído à média anual.
#include <stdio.h>
 void main ()
 {
 float ma, cont =1;
 int apr= 0, rep = 0;
 do
 {
 printf("digita a media anual:\n");
 scanf("%f", &ma);
 cont = cont + 1;
 if (ma > 7)
 apr = apr + 1;
 else
 rep = rep + 1;
 }while (ma != -1);
 printf("reprovados: %d\n", rep);
 printf("aprovados: %d", apr);
 }
10- A prefeitura de uma cidade fez uma pesquisa entre seus habitantes e deseja saber algumas informações:
a) A média salarial da população
b) A média de número de filhos.
c) O maior salário.
d) O percentual de pessoas com salário até R$1200,00
Faça um algoritmo que receba o salário e o número de filhos de cada habitante desta cidade. O final da leitura dos dados deve ser dada pela entrada de um valor negativo de salário.
#include <stdio.h>
 void main ()
 {
 int filho, pessoa=0, p1200=0;
 float salario, ms, mf, acsal, acf, mas=0, per1200;
 while(salario >= 0 )
 {
 printf("digite o salario:");
 scanf("%f", &salario);
 if (salario >= 0){
 pessoa = pessoa + 1;
 printf("digite o numero de filhos:");
 scanf("%d", &filho);
 acsal = salario + acsal;
 acf = filho + acf;
 if (salario > mas)
 {
 mas = salario;
 }
 if (salario <= 1200)
 {
 p1200 = p1200 + 1;
 }
 }
 }
 ms = acsal/(acf + pessoa);
 mf = acf /pessoa;
 per1200 = p1200*100/pessoa;
 printf("media salario: %0.2f\nmedia de filhos: %0.2f\nmaior salario: %0.2f\npercentual de pessoas com salario de ate 1200 reais: %f\n", ms, mf, mas, per1200);
 }
11- Faça um algoritmo que leia dez conjuntos de dois valores, o primeiro correspondente ao número de um aluno e o segundo correspondente a sua altura em centímetros. Encontre o aluno mais baixo e o aluno mais alto e mostre o aluno mais baixo e o mais alto com a altura e seus respectivos números.
#include <stdio.h>
 void main ()
 {
 int i, na=0, nb=0;
 float n, h, ha=0, hb=5;
 for (i=1 ; i<=3 ; i++)
 {
 printf("digite numero do aluno:");
 scanf("%f", &n);
 printf("digite altura em cm do aluno:");
 scanf("%f", &h);
 if (h > ha)
 {
 ha = h;
 na = n;
 }
 if (h < hb )
 {
 hb = h;
 nb = n;
 }
 }
 printf("maior altura\naluno: %d\naltura: %0.2f\n\n", na, ha);
 printf("menor altura\naluno: %0d\naltura: %0.2f", nb, hb);
 }
12 - Em uma casa moram dois irmãos, João e José. João tem 150 cm de altura, e cresce 2 cm por ano. José tem 110 cm de altura e cresce 3 cm por ano. Faça um algoritmo que calcule e imprima quantos anos serão necessários para que José seja maior que João.
#include <stdio.h>
 void main ()
 {
 int a=0;
 float jose = 110, joao =150;
 while(jose <= joao)
 {
 a = a + 1;
 jose = jose + 3;
 joao = joao + 2;
 }
 printf("serao necessarios %d anos", a);
 }
13 - Escreva um algoritmo que leia um número “n” (variável) e inteiro o positivo e que calcula a seguinte soma:
S = 1 + 1/2 + 1/3 + 1/4 + … + 1/n 
O algoritmo deve escrever cada termo gerado e o valor final S.
#include <stdio.h>
 void main ()
 {
 int n, i ;
 float s, sac , nc=0 ;
 printf("digite o valor de n( numero inteiro positivo):");
 scanf("%d", &n);
 sac = 1;
 printf("s = %0.2f\n", sac);
 for (i = 1; i <= n; i++)
 {
 nc = nc + 1;
 s= 1/nc;
 printf("s = %0.2f \n", s);
 sac = sac + s;
 }
 printf("soma = %0.2f \n", sac);
 }
14 - Escreva um algoritmo que leia 10 números e informe a quantidade de números que estão no intervalo de entre 10 (incluso) e 20(incluso), e mostre também a quantidade de números que estão fora deste intervalo.
#include <stdio.h>
 void main ()
 {
 int i, dentro=0, fora=0;
 float n ;
 for (i=1; i <= 10; i++)
 {
 printf("digite um numero:");
 scanf("%f", &n);
 if( n >= 10 && n <= 20)
 dentro = dentro + 1;
 else
 fora = fora + 1;
 }
 printf("quantidade de numeros dentro do intevalo de 10 a 20:\n%d\n", dentro);
 printf("quantidade de numeros fora do intevalo de 10 a 20:\n%d\n", fora);
 }
15 - Escrever um algoritmo que lê 5 pares de valores a, b, todos inteiros e positivos, um par de cada vez, e com a < b, escreve os inteiros pares de a até b, incluindo o a e o b se forem pares.
#include <stdio.h>
 void main ()
 {
 int n1, n2, i;
 printf("digite o numero inteiro de menor valor:");
 scanf("%d", &n1);
 printf("digite o numero inteiro de maior valor:");
 scanf("%d", &n2);
 for (i = n1; i <= n2 ; i++ )
 {
 printf("digite o numero inteiro de menor valor:");
 scanf("%d", &n1);
 printf("digite o numero inteiro de maior valor:");
 scanf("%d", &n2);
 if (i % 2 == 0)
 printf("%d\n", i);
 }
 }
16 - Faça um algoritmo que calcule o fatorial de um número. 
Ex.: 5! = 1x2x3x4x5 = 120
Lembrando que 0! = 1.
#include <stdio.h>
 void main ()
 {
 int n, nac = 1, i;
 printf("digite o valor do numero para realizar a fatoriacao:\n");
 scanf("%d", &n);
 for(i=1; i<= n ; i++)
 {
 nac = nac * i;
 }
 printf("resultado: %d", nac);
 }
17 - Escrever um algoritmo que lê um valor N inteiro e positivo e que calcula e escreve o valor de E. 
 E = 1 + 1 / 1! + 1 / 2! + 1 / 3! + 1 / N! 
#include<stdio.h>
 void main()
{
 int i, n;
 float invfat, result;
 printf("Digite um numero:\n");
 scanf("%d", &n);
 result = 1.0;
 invfat = 1.0;
 for(i=1; i<=n; i++){
 invfat = invfat * 1.0/i;
 result = result + invfat;
 }
 printf("resultado: %f\n", result);
}
18 - Faça um algoritmo que apresente o valor de uma potência de uma base qualquer (Variável B) elevado à um expoente qualquer (Variável E), ou seja, BE. Não faça o uso do operador de potencia, resolva o algoritmo utilizando estrutura de repetição. Considere apenas entradas de números inteiros e positivos.
#include<stdio.h>
 void main()
{
 int b, e, i;
 float result=1;
 printf("Digite o valor da base:\n");
 scanf("%d", &b);
 printf("Digite o valor do expoente:\n");
 scanf("%d", &e);
 for (i=1 ; i <= e ; i++)
 {
 result = result*b;
 }
 printf("%0.2f", result);
}
19 - Elabore um algoritmo que ao final apresente a soma dos valores pares existentes entre 9 e 51.
#include<stdio.h>
 void main()
{
 int ini = 9, fim = 51, i;
 float soma;
 for(i= ini; i <= fim ; i++)
 {
 if(i % 2 == 0)
 soma = soma + i;
 }
 printf("o valor da soma: %0.2f\n", soma);
}
20 - Elaborar um algoritmo que leia sucessivos números inteiros e positivos e apresente ao final a quantidade de números lidos, o somatório dos números lidos e a média. O algoritmo deve receber os valores enquanto forem positivos. O fim do recebimento de valores deve se dar quando for fornecido um número negativo.
#include<stdio.h>
 void main()
{
 int cont= 0, n;
 float soma, media;
 while(n >= 0)
 {
 printf("digite o numero:");
 scanf("%d", &n);
 if(n >= 0)
 {cont = cont + 1;
 soma = soma + n;
 }
 }
 media = soma/cont;
 printf("quantidade de numeros:%d\nsomatorio dos numeros: %0.2f\nmedia: %0.2f\n", cont, soma, media);
}
21- Elabore um algoritmo de controle de senha, que dê três chances de acerto ao usuário do sistema; se ele não conseguir deverá mostrar uma mensagem de “conta bloqueada!”.
A senha pode ser definida como uma constante no início do algoritmo. Considerar uma senha numérica.
#include<stdio.h>
 void main()
{
 int senha, senhadig, cont=1, cod;
 while ( cod != 4)
 {
 cont = cont + 1;
 printf("digite a senha:");
 scanf("%d", &senha);
 if (senha == 123 && cont <= 3)
 {
 printf("\nacesso liberado\n");
 cod = 4;
 }
 else if (senha != 123 && cont >3 )
 {
 printf("\nconta bloqueada\n");
 cod = 4;
 }
 else
 printf ("\nsenha invalida. tente novamente.\n\n");
 }
}

Continue navegando