Baixe o app para aproveitar ainda mais
Prévia do material em texto
INTRODUÇÃO À LINGUAGEM DE PROGRAMAÇÃO C LISTA DE EXERCÍCIOS 03 – INTRODUÇÃO GERAL Q01) Faça um programa que receba dois números e mostre qual deles e ́ o maior. #include <stdio.h> int main(void) { int a; int b; printf("Digite um numero\n"); scanf("%d",&a ); printf("Digite o segundo numero\n"); scanf("%d",&b ); printf("O maior numero é:"); if(a>b){ printf("%d",a); }else{ printf("%d",b); return 0; } } Q02) Leia um número fornecido pelo usuário. Se esse número for positivo, calcule e imprima o quadrado número. Se o número for negativo, mostre uma mensagem dizendo que o número é inválido. #include <stdio.h> int main(void) { int a; int b; printf("Digite um numero\n"); scanf("%d",&a ); if(a>=0){ printf("%d",a*a); }else{ printf("esse numero eh invalido"); return 0; } } Q03) Leia um número real. Se o número for positivo imprima a raiz quadrada. Do contrário, imprima o número ao quadrado. #include <stdio.h> #include <math.h> int main(void) { float a1; printf("Digite um numero:\n"); scanf("%f",&a1); if (a1 > 0){ a1= sqrt(a1); printf("A raiz do seu numero: %f",a1); } else{ a1= a1*a1; printf("Seu numero ao quadrado: %f\n",a1); } return 0; } Q04) Faça um programa que receba um número inteiro e verifique se este número é par ou ímpar. #include <stdio.h> #include <stdlib.h> int main(void) { int a; printf("Digite um numero inteiro\n"); scanf("%d",&a); if (a%2==0){ printf("O numero que voce digitou eh par"); } else{ printf("O numero que voce digitou eh impar"); } return 0; } Q05) Escreva um programa que, dados dois números inteiros, mostre na tela o maior deles, assim como a diferença existente entre ambos. #include <stdio.h> int main() { int a, k, dif; printf("Digite dois numeros inteiros\n"); scanf("%d %d", &a, &k); if(a>k){ dif = a-k; printf("O numero maior e %d e a diferença entre eles e: %d", a, dif); } else { dif = k-a; printf("O numero maior eh %d e a diferença entre eles e: %d", k, dif); } return 0; } Q06) Faça um programa que receba dois números e mostre o maior. Se por acaso, os dois números forem iguais, imprima a mensagem Números iguais. #include <stdio.h> int main() { int a, b; printf("Digite dois numeros inteiros\n"); scanf("%d %d", &a, &b); if(a>b){ printf("O num maior eh %d", a); } else if (a<b) { printf("O numero maior eh %d", b); } else if (a==b) { printf("Os numeros digitados são iguais.\n"); } return 0; } Q07) Faça um programa que leia 2 notas de um aluno, verifique se as notas são válidas e exiba na tela a média aritmética simples destas notas. Uma nota válida deve ser, obrigatoriamente, um valor entre 0 e 100, onde caso a nota não possua um valor válido, este fato deve ser informado ao usuário e o programa termina. #include <stdio.h> #include <stdlib.h> int main(void) { float n1, n2, media; printf("Digite a primeira nota do aluno:\n"); scanf("%f",&n1); printf("Digite a segunda nota do aluno:\n"); scanf("%f",&n2); if((n1>=0) && (n1<=100) && (n2>=0) && (n2<=100)){ media = (n1+n2) / 2; printf("Sua media e: %.2f",media); } else{ printf("Nota invalida"); } return 0; } Q08) Leia o salário de um trabalhador e o valor da prestação de um empréstimo. Se a prestação for maior que 20% do salário imprima: Empréstimo não concedido, caso contrário imprima: Empréstimo concedido. #include <stdio.h> int main(void) { int pay, loan; printf("Quanto você ganha?\n"); scanf("%d", &pay); printf("Digite o valor que voce quer emprestado:\n"); scanf("%d",&loan); if((loan/10)<=(pay*0.2)){ printf("Emprestimo concedido!\n");} else{ printf("Emprestimo não concedido!\n"); } return 0; } Q09) Faça um programa que receba a altura e o sexo de uma pessoa e calcule e mostre seu peso ideal, utilizando as seguintes fórmulas (onde h corresponde à altura): • Homens: (72.7 ∗ h) − 58 • Mulheres: (62, 1 ∗ h) − 44, 7 #include <stdio.h> int main() { float h, ideal; char sexo; printf("Oi, Qual o seu sexo?\nEscreva H para o sexo masculino e M para o feminino.\nDepois digite sua altura. \n"); scanf("%c",&sexo); scanf("%f", &h); printf("Altura: %.2f, sexo=%c\n",h,sexo); if(sexo == 'H') { ideal = (72.7*h) - 58; printf(" Seu peso ideal eh %.2f", ideal); } else if (sexo == 'M'){ ideal = (62.1 * h) - 44.7; printf(" Seu peso ideal eh %.2f", ideal); } return 0; } Q10) Escreva um programa que leia um número inteiro maior do que zero e devolva, na tela, a soma de todos os seus algarismos. Por exemplo, ao número 251 corresponderá o valor 8 (2 + 5 + 1). Se o número lido não for maior do que zero, o programa terminará com a mensagem “Número inválido”. #include <stdio.h> #include <stdlib.h> int main() { int num, SOMA=0 , a; printf("Digite um numero: "); scanf("%d",&num); a = num ; if (num > 0) { while (num > 0) { SOMA = SOMA + num % 10; num = num / 10; } printf("A soma dos algarismos do numero %d eh : %d\n", a, SOMA); } else printf("NUMERO INVALIDO, VOCE DIGITOU UM NUMERO IGUAL O MENOR QUE ZERO\n"); return 0; } Q11) Faça um algoritmo que calcule a média ponderada das notas de 3 provas. A primeira e a segunda prova têm peso 1 e a terceira tem peso 2. Ao final, mostrar a média do aluno e indicar se o aluno foi aprovado ou reprovado. A nota para aprovação deve ser igual ou superior a 60 pontos. #include <stdio.h> #include <stdlib.h> int main(void) { int n1,n2,n3,p1=1,p3=3, notafinal; printf("Qual sua primeira nota? "); scanf("%d",&n1); printf("Qual sua segunda nota: "); scanf("%d", &n2); printf("Qual sua terceira nota: "); scanf("%d", &n3); notafinal=((n1*p1)+(n2*p1)+(n3*p3))/(p1+p1+p3); if (notafinal>= 60) { printf("Parabéns, aluno Aprovado! A media foi de %d",notafinal); } else { printf("Infelizmente você foi Reprovado! A media foi de %d", notafinal); } return 0; } Q12) Escreva um programa que leia um inteiro entre 1 e 7 e imprima o dia da semana correspondente a este número. Isto é, domingo se 1, segunda-feira se 2, e assim por diante. #include <stdio.h> int main(void) { int dia; printf("Digite um numero de 1 até 7: "); scanf("%d",&dia); switch (dia) {case 1: printf("Domingo");break; case 2: printf("Segunda-feira");break; case 3: printf("Terca-feira");break; case 4: printf("Quarta-feira");break; case 5: printf("Quinta-feira");break; case 6: printf("Sexta-feira");break; case 7: printf("Sabado");break;} return 0; } Q13) Faça um programa que mostre ao usuário um menu com 5 opções de operações matemáticas (+ - / * %). O usuário escolhe uma das opções e o programa então pede dois valores numéricos e realiza a operação, mostrando o resultado e saindo. #include <stdio.h> #include <math.h> int main() { char operacao; float num1, num2, resto; printf("Escolha uma dessas operacaos:"); printf("\n[+] adicao"); printf("\n[-] subtracao"); printf("\n[*]multiplicacao"); printf("\n[/]divisao"); printf("\n[%%]Resto divisão\n"); scanf("%c",&operacao); printf("Digite o primeiro numero: "); scanf("%f",&num1); printf("Digite o primeiro numero: "); scanf("%f",&num2); switch( operacao ) { case '+': printf("\n%.2f + %.2f = %.2f", num1, num2, (num1 +num2)); break; case '-': printf("\n%.2f - %.2f = %.2f", num1, num2, (num1 - num2)); break; case '*': printf("\n%.2f * %.2f = %.2f", num1, num2, (num1 * num2)); break; case '/': printf("\n%.2f / %.2f = %.2f", num1, num2, (num1 / num2)); break; case '%': printf("\n%.2f / %.2f = %.2f", num1, num2, (fmod(num1, num2))); break; default: printf("\nOperacao invalida."); } return(0); } Q14) Faça um programa para verificar se um determinado número inteiro e divisível por 3 ou 5, mas não simultaneamente pelos dois. #include <stdio.h> int main(void) {int num, div3, div5, div35; printf("Digite um inteiro:\n"); scanf("%d",&num); div3 = num % 3; div5 = num % 5; div35 = div3+div5; if((div35!=0)&& ((div3==0)|| (div5==0) ) ){ printf("O número que você digitou eh divisivel por 3 ou por 5, mas nao pelos dois ao mesmo tempo.\n\n"); } else{ printf("O numero que você digitou eh divisivel por 3 e por 5"); } return 0; } Q15) Leia a idade e o tempo de serviço de um trabalhador e escreva se ele pode ou não se aposentar. As condições para aposentadoria são • Ter pelo menos 65 anos, • Ou ter trabalhado pelo menos 30 anos, • Ou ter pelo menos 60 anos e trabalhado pelo menos 25 anos. #include <stdio.h> int main(void) { int id, tem; printf("Oi,digite sua idade: "); scanf ("%i",&id); printf("Digite seu tempo de serviço em anos: "); scanf ("%i",&tem); if (id >=65 || tem >=30 || (id >= 60 && tem >=25)){ printf ("Você pode se aposentar"); } else{ printf ("Você não pode se aposentar"); } return 0; } Q16) Determine se um determinado ano lido é bissexto. Sendo que um ano é bissexto se for • divisível por 400 ou • se for divisível por 4 e não for divisível por 100. #include <stdio.h> int main(void) { int dd, mm, aa; int Bis = ((aa%4==0)||((aa%100==0)&&(aa%400==0))); printf("Digite um no formato (aaaa) para saber se ele eh bissexto ou nao:\n"); scanf("%d", &aa); if ((aa%4==0)|| ((aa%100==0)&& (aa%400==0))){ printf("O ano que você digitou eh Bissexto!\n"); } else{ printf("O ano que você digitou nao eh Bissexto!\n"); } return 0; } Q17) Faça um programa que receba três números e mostre-os em ordem crescente. #include <stdio.h> int main() { int n1, n2, n3; printf("Digite tres numeros: "); scanf("%d %d %d", &n1, &n2, &n3); if (n1 <= n2 && n2 <= n3) { printf("A ordem crescente eh: %d %d %d\n", n1, n2, n3); } else if (n1 <= n3 && n3 <= n2) { printf("A ordem crescente eh: %d %d %d\n", n1, n3, n2); } else if (n2 <= n1 && n1 <= n3) { printf("A ordem crescente eh: %d %d %d\n", n2, n1, n3); } else if (n2 <= n3 && n3 <= n1) { printf("A ordem crescente eh: %d %d %d\n", n2, n3, n1); } else if (n3 <= n1 && n1 <= n2) { printf("A ordem crescente eh: %d %d %d\n", n3, n1, n2); } else { printf("A ordem crescente eh: %d %d %d\n", n3, n2, n1); } return 0; } Q18) Faça um programa que receba a altura e o peso de uma pessoa. De acordo com a tabela a seguir, verifique e mostra qual a classificação dessa pessoa. #include <stdio.h> int main(void) { double alt,peso; printf("Digitesua altura(cm) e seu peso (Kg): \n"); scanf("%lf%lf",&alt,&peso); if (alt<1.20) { if (peso<60) { printf("classificado no grupo A"); } else if (peso>=60 && peso<=90) { printf("classificado no grupo D"); } else { printf("classificado no grupo G"); } } else if (alt>=1.20 && alt<=1.70) { if (peso<60) { printf("classificado no grupo B"); } else if (peso>=60 && peso<=90) { printf("classificado no grupo E"); } else { printf("classificado no grupo H"); } } else { if (peso<60) { printf("classificado no grupo C"); } else if (peso>=60 && peso<=90) { printf("classificado no grupo F"); } else { printf("classificado no grupo I"); } } return 0; } Q19) Leia a nota e o número de faltas de um aluno, e escreva seu conceito. De acordo com a tabela abaixo, quando o aluno tem mais de 20 faltas ocorre uma redução de conceito. #include <stdio.h> int main(void) { int n, f; printf("Digite sua nota de 0 a 100: \n"); scanf("%d",&n); printf(" Agora digite seu numero de faltas: \n"); scanf("%d",&f); if(n>=90 && n<=100){ if(f<=20){ printf("Seu conceito eh A"); }else { printf("Seu conceito eh B");} }else if (n>=75 && n<90){ if(f<=20){ printf("Seu conceito eh B"); }else { printf("Seu conceito eh C");} }else if (n>=50 && n<75){ if(f<=20){ printf("Seu conceito eh C"); }else { printf("Seu conceito eh D");} }else if (n>=40 && n<50 ){ if(f<20){ printf("Seu conceito eh D"); }else { printf("Seu conceito eh E");} }else{ printf("E"); } return 0; } Q20) Leia uma data e determine se ela é válida. Ou seja, verifique se o mês está entre 1 e 12, e se o dia existe naquele mês. Note que fevereiro tem 29 dias em anos bissextos, e 28 dias em anos não bissextos. #include <stdio.h> int main(void){ int dia, mes, ano; int bissexto=0; int valido = 0; printf("Digite uma data no formato dd/mm/aaaa\n"); scanf("%d/%d/%d",&dia, &mes, &ano); if (ano%400==0){ bissexto++; }else{ if ((ano%4==0)&&(ano%100!=0)){ bissexto++; } } switch(mes){ case 1: case 3: case 5: case 7: case 8: case 10: case 12: if((dia>0)&&(dia<=31)) valido = 1; break; case 4: case 6: case 9: case 11: if((dia>0)&&(dia<=30)) valido = 1; break; case 2: if ((dia>0)&&(dia<=(28+bissexto))) valido = 1; break; } if (ano<1580){ valido=0; printf("O calendario atual eh vadido a partir de 1580\n"); } printf("%d/%d/%d e uma data ", dia, mes, ano); if(valido){ printf("valida."); } else{ printf("invalida."); } return 0; }
Compartilhar