Ir ao conteúdo
  • Cadastre-se

Leitura em c++ conversão


Kaique Heinen

Posts recomendados

FALA MEUS AMIGOS, ESTOU TENTANDO TRADUZIR UM ALGORITIMO PARA C++. MAS NÃO ESTOU ME SAINDO MUITO BEM.

 

Me ajudem ai. 

Fazer um algoritmo para calcular áreas. O algoritmo deverá perguntar se o usuário que calcular a área de um quadrado, de um triangulo, de um retângulo ou de um círculo para 356 figuras. O usuário deverá digitar ( q, t, r ou c - em letras maiúsculas ou em letras minúsculas). Para cada figura o algoritmo deverá solicitar também que o usuário digite o valor do lado para o quadrado, da altura e da base para o retângulo ou triângulo e o valor do raio para o círculo. Após a leitura de todos os dados, o programa deverá mostrar quantas área foram calculadas para cada figura. Mostrar também qual foi a maior área calculada e para qual figura esta área foi calculada. Se for digitada uma letra diferente das sugeridas, mostrar uma mensagem de erro e não perguntar nada para esta entrada e voltar a perguntar para qual figura o usuário quer calcular a área. Ao final, mostrar também quantas tentativas de cálculo para figuras inválidas foram feitas.

 

ALGORITIMO RESOLVIDO. 

início

caractere : opcao, tipo_de_figura_com_maior_area, tipo_de_figura ;

inteiro : qtd_ret, qtd_triang, qtd_quad, qtd_circ, qtd_invalidos, n ;

real : area, maior_area; qtd_ret ← 0;

qtd_triang ← 0; qtd_quad ← 0;

qtd_circ ← 0; qtd_invalidos ← 0;

maior_area ← 0 ;

 

para n de 1 até 356 passo 1 faça imprima ( " Para qual figura plana você quer calcular a área ");

imprima ( "( Digite Q para quadrados,T para triângulos, R para retângulos ou C para círculos: " );

leia ( opcao );

 

se ( opcao ≠ "q" e opcao ≠ "Q" e opcao ≠ "R" e opcao ≠ "r" e opcao ≠ "t" e opcao ≠ "T" e opcao ≠ "C" e opcao ≠ "C" ) então imprima ( " Valor inválido! Tente novamente!" );

qtd_invalidos ← qtd_invalidos + 1 ;

 

senão

 

se ( opcao = "Q" ou opcao = "q" ) então tipo_de_figura ← "quadrado" ;

qtd_quad ← qtd_quad + 1;

leia ( lado );

 

area ← lado x lado ;

 

imprima ( "O quadrado de lado ", lado, " tem área igual a ", area, "!" );

 

fim_se;

 

se ( opcao = "R" ou opcao = "r" ) então tipo_de_figura ← "retangulo" ;

 

qtd_quad ← qtd_quad + 1;

 

leia ( base ); leia ( altura ); area ← base x altura ;

imprima ( "O retângulo com base ", base, " e altura ", altura, " tem área igual a ", area, "!" );

 

fim_se;

 

se ( opcao = "T" ou opcao = "t" ) então tipo_de_figura "triangulo" ;

 

qtd_triang ← qtd_triang + 1; leia ( base ); leia ( altura ); area ← ( base x altura ) ÷ 2 ;

 

imprima ( "O retângulo com base ", base, " e altura ", altura, " tem área igual a ", area, "!" );

 

fim_se;

 

se ( opcao = "C" o'u opcao = "c" ) então tipo_de_figura ← "circulo" ;

 

qtd_circ ← qtd_circ + 1; leia ( raio );

leia ( altura );

 

area ← ( 3.14159265482 x raio x raio );

 

imprima ( "O circulo com raio ", raio, " tem área igual a ", area, "!" );

 

fim_se;

 

 

se ( area > maior_area ) então maior_area ← area; tipo_de_figura_com_maior_area ← tipo_de_figura;

fim_se;

 

fim_se;

 

fim_para;

imprima ( "Relatorios:" );

imprima ( "Quantidade de áreas calculadas por tipo de figura:" ); imprima ( "Quadrados: ", qtd_quad, " Retangulos: ", qtd_ret, " Triangulos: ", qtd_triang, " Circulos: ", qtd_circ );

imprima ( "Foram feitas ", qtd_invalidos, " tentativas de calcular áreas de figuras inválidas!" );

imprima ( "A maior area calculada foi ", maior_area, " e pertence a um ", tipo_de_figura_com_maior_area );

fim.

 

 

LEITURA PARA  C++

 

#include<stdio.h>
#include<conio.h>
#include<locale.h>
#define pi 3.14151685
int main(){
setlocale(LC_ALL, "PORTUGUESE");

char opcao, tipo_d_figura_c_maior_area, tipo_d_figura,lado,base,altura, raio;
int qtd_ret, qtd_triang, qtd_quad, qtd_circ, qtd_invalidos, n;
float area, maior_area;

qtd_ret=0;
qtd_circ=0;
qtd_triang=0;
qtd_quad=0;
qtd_invalidos=0;
maior_area=0;

for(n=1; n<=3; n++){
    printf("PARA QUAL FIGURA PLANA VOCÊ QUER CALCULAR A ÁREA:\n");
    printf("Digite Q para quadrados, T para triângulos, R para retângulos ou C para circulos:\n");
    opcao=getche();
    scanf("%c", &opcao);
    
    if(opcao!='A' && opcao !='a' && opcao!='b' && opcao!='B' && opcao!='y' && opcao!='Y' && opcao!='N' && opcao!='n') {
        printf("Valor inválido! Tente novamente!");
        qtd_invalidos=qtd_invalidos+1;
        
    }
    else{
        if(opcao=='Q'|| opcao=='q'){
            tipo_d_figura='quadrado';
            qtd_quad=qtd_quad+1;
            scanf("%c", &lado);
            area=lado*lado;
            printf("O quadrado de lado%i: tem área igual a: %f !", lado, area);
        }
        if(opcao=='R'|| opcao=='r'){
            tipo_d_figura='RETANGULO';
            qtd_quad=qtd_quad+1;
            scanf("%c", &base);
            scanf("%c", &altura);
            area=base*altura;
            printf("O retângulo com base:%i e altura: %i, tem area igual a : %f");
        }
        if(opcao=='T'|| opcao=='t'){
            tipo_d_figura ='TRIANGULO';
            qtd_triang=qtd_triang+1;
            scanf("%c", &base);
            scanf("%c", &altura);
            area=(base*altura)/2;
            printf("O retângulo com base:%i, e altura: %i, tem area igual a : %i");
        }
        if(opcao=='C'||opcao=='c'){
            tipo_d_figura ='circulo';
            qtd_circ=qtd_circ+1;
            scanf("%c", &raio);
            scanf("%c",& altura);
            area= pi*raio*raio;
            printf("O circulo com raio: %i, tem area igual a :%c\n");
        }
    }
}
printf("Relatorios:" );
printf("Quantidade de áreas calculadas por tipo de figura:" );
printf("Quadrados: %i, Retangulos é: %i, Triangulos: %i, Circulos: %i",qtd_quad, qtd_ret,qtd_triang, qtd_circ);
printf("Foram feitas: %i, tentativas de calcular area de figuras invalidas", qtd_invalidos);
printf("A maior area calculada foi:%f , e pertence a um: %c",maior_area, tipo_d_figura_c_maior_area );
}

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

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...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!