Ir ao conteúdo
  • Cadastre-se

LeoAlves_jp

Membro Júnior
  • Posts

    3
  • Cadastrado em

  • Última visita

Reputação

0
  1. Eu não sei criar esse tipo de função, eu estou começando a estudar isso agora. Na verdade eu nem sei como usaria essa função MENU.
  2. Eu fiz esta algorítimo como um exercício na universidade. Quando eu coloco ele pra rodar, e coloco a primeira opção no meu while, ele roda bem, mas quando ele deve pedir para digitar a opção para o menu switch ele imprime na tela as opções mas pula direto para defaut não deixando a pessoa digitar qual a opção que deseja. #include <stdio.h> float area_quadrado(float num1, float num2){ float resultado; resultado = num1 * num2; return(resultado); } float area_triangulo(float num1, float num2){ float resultado; resultado = (num1 * num2) / 2; return(resultado); } float area_circulo(float num1){ float resultado; resultado = (num1 * num1) * 3.14; return(resultado); } float area_retangulo(float num1, float num2){ float resultado; resultado = num1 * num2; return(resultado); } float area_trapezio(float num1, float num2, float num3){ float resultado; resultado = ((num1 + num2)*num3)/2; return(resultado); } float soma(float num1, float num2){ float resultado; resultado = num1 + num2; return(resultado); } float divide(float num1, float num2){ float resultado; resultado = num1 / num2; return(resultado); } float multiplica(float num1, float num2){ float resultado; resultado = num1 *num2; return(resultado); } float subtrai(float num1, float num2){ float resultado; resultado = num1 - num2; return(resultado); } void main(void){ float num1,num2,num3,n1,n2,resultado; char i,x; /*variaveis dos comandos switch*/ int opcao; while(opcao > 0){ printf("Deseja calcular a area de uma forma geometrica ou deseja calcular o conjunto de duas areas?\n Para calcular area, pressione: 1 \n Para calcular o conjunto de duas areas, pressione: 2 \n\n"); scanf("%i", &opcao); if(opcao == 1){ printf("Escolha qual figura geometrica voce quer calcular: Quadrado = q, Triangulo = t Circulo = c, retangulo = r, Trapezio = T\n"); scanf("%c", &x); switch(x){ case 'q': printf("\n Digite a base do quadrado:\n"); scanf("%f",&num1); printf("Digite a altura do quadrado:\n"); scanf("%f", &num2); resultado = area_quadrado(num1,num2); printf("A area eh %0.2f\n\n", resultado); break; case 't': printf("\n Digite a base do triangulo:\n"); scanf("%f",&num1); printf("Digite a altura do triangulo:\n"); scanf("%f", &num2); resultado = area_triangulo(num1,num2); printf("A area eh %0.2f\n\n", resultado); break; case 'c': printf("Digite o raio do circulo:\n"); scanf("%f", &num1); resultado = area_circulo(num1); printf("A area eh %0.2f\n\n", resultado); break; case 'r': printf("\n Digite a base do retangulo:\n"); scanf("%f",&num1); printf("Digite a altura do retangulo:\n"); scanf("%f", &num2); resultado = area_retangulo(num1,num2); printf("A area eh %0.2f\n\n", resultado); break; case 'T': printf("Digite a base maior do trapezio:\n"); scanf("%f", &num1); printf("Digite a base menor do trapezio:\n"); scanf("%f", &num2); printf("Digite a altura do trapezio:\n"); scanf("%f", &num3); resultado = area_trapezio(num1,num2,num3); printf("A area eh %0.2f\n\n", resultado); break; default: printf("\nOpcao invalida!!!\n"); break;} } else if(opcao == 2){ printf("Qual operação voce deseja?\nS= somar d= dividir m= multiplicar s= subtrair\n\n"); scanf("%c", &i); switch(i){ case 'S': printf("Digite a primeira area:\n"); scanf("%f", &n1); printf("Digite a segunda area:\n"); scanf("%f", &n2); resultado = soma(n1,n2); printf("A soma das areas eh %0.2f ²\n\n", resultado); break; case 's': printf("Digite a primeira area:\n"); scanf("%f", &n1); printf("Digite a segunda area:\n"); scanf("%f", &n2); resultado = subtrai(n1,n2); printf("A subtração das areas eh %0.2f ²\n\n", resultado); break; case 'd': printf("Digite a primeira area:\n"); scanf("%f", &n1); printf("Digite a segunda area:\n"); scanf("%f", &n2); resultado = divide(n1,n2); printf("A divisão das areas eh %0.2f ²\n\n", resultado); break; case 'm': printf("Digite a primeira area:\n"); scanf("%f", &n1); printf("Digite a segunda area:\n"); scanf("%f", &n2); resultado = multiplica(n1,n2); printf("A multiplicação das areas eh %0.2f ²\n\n", resultado); break; default: printf("\nOpção invalida!!!\n"); break;} } else printf("\nOpcao invalida!!!\n"); } }
  3. Estou fazendo uma calculadora para cálculos simples(subtrair, somar, dividir, multiplicar). Mas não estou compreendendo os erros que estão acontecendo. Acredito que seja no switch, pois é a primeira vez que utilizo uma variável char para escolha do case. #include<stdio.h> float soma(float num1, float num2){ float resultado; resultado = num1 + num2; return(resultado); } float divide(float num1, float num2){ float resultado; resultado = num1 / num2; return(resultado); } float multiplica(float num1, float num2){ float resultado; resultado = num1 *num2; return(resultado); } float subtrai(float num1, float num2){ float resultado; resultado = num1 - num2; return(resultado); } void main(){ char ch = '0'; char i; float n1, n2, resultado; while(ch != n){ printf("Qual operação voce deseja fazer? \n S= somar d= dividir m= multiplicar s= subtrair\n"); scanf("%c", &i); switch(i){ case S: printf("Digite o primeiro numero:\n"); scanf("%f", &n1); printf("Digite o segundo numero:\n"); scanf("%f", &n2); resultado = soma(n1,n2); printf("O resultado é %f\n", resultado); break; case s: printf("Digite o primeiro numero:\n"); scanf("%f", &n1); printf("Digite o segundo numero:\n"); scanf("%f", &n2); resultado = subtrai(n1,n2); printf("O resultado é %f\n", resultado); break; case d: printf("Digite o primeiro numero:\n"); scanf("%f", &n1); printf("Digite o segundo numero:\n"); scanf("%f", &n2); resultado = divide(n1,n2); printf("O resultado é %f\n", resultado); break; case m: printf("Digite o primeiro numero:\n"); scanf("%f", &n1); printf("Digite o segundo numero:\n"); scanf("%f", &n2); resultado = multiplica(n1,n2); printf("O resultado é %f \n", resultado); break; default: printf("Opção invalida."); } printf("Deseja fazer mais alguma operacão?\n S/N "); scanf("%c", &ch); } } Gostaria de saber também se eu posso usar estar condição no while " while(ch != n || ch != N)" Agradeço desde já

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!