Progama em C++

527 palavras 3 páginas
Expressões Aritméticas

Algoritmos e Estruturas de Dados III

#include
#include
#include
#include
#include

char pilha1 [30]; // armazena operadores e parênteses (1. etapa) float pilha2[30]; // armazena valores numéricos (2. etapa) char exprInfixa [30]; // expressão aritmética original (INFIXA) char exprPosfixa [30]; // expressão aritmética POSFIXA int topo = -1; int indice = 0; float resultado;

void convertePosfixa ( ); //cria expressão POSFIXA (1. etapa) void calculaExpressao ( ); //calcula resultado final (2. etapa) void mostraResultados ( ); //visualiza resultados bool testaParenteses( ); // verifica qtde de parenteses na expressão bool testaMaisDeUmDigito();

int main( ){ int op = 0; while (op != 2){ printf("\n Resolução de Expressoes Numericas - Escolha uma opcao \n"); printf("\n 1 - Resolver uma expressao númerica"); printf("\n 2 - Sair\n"); scanf("%d",&op); switch (op){ case 1: convertePosfixa ( ); calculaExpressao ( ); mostraResultados ( ); break; case 2: break; default:printf("\nOpcao invalida"); } }
}

void convertePosfixa(){ printf("\nDigite a expressao numerica\n"); scanf("%s",&exprInfixa); bool correto = testaParenteses(); if (!correto){ while(!correto){ printf("Expressão invalida.(Parenteses)\n"); printf("Digite novamente a expressão\n"); scanf("%s",&exprInfixa); correto = testaParenteses(); } } correto = testaMaisDeUmDigito(); if (!correto){ while(!correto){ printf("Expressão invalida.(Numeros com dois digitos)\n"); printf("Digite novamente a expressão\n"); scanf("%s",&exprInfixa); correto = testaMaisDeUmDigito(); } } for(int i = 0 ; i < strlen(exprInfixa); i++){ if (isdigit(exprInfixa[i]) != 0){ exprPosfixa[indice] = exprInfixa[i]; indice++; } else{

Relacionados

  • Algoritmo Progama O C
    1190 palavras | 5 páginas
  • trabalho scilab
    1759 palavras | 8 páginas
  • Assembly para PIC
    742 palavras | 3 páginas
  • Atps c
    340 palavras | 2 páginas
  • redes
    308 palavras | 2 páginas
  • Sistema T & D
    651 palavras | 3 páginas
  • Tec.seg. do trabalho
    867 palavras | 4 páginas
  • LISTA DO PROCESSADOR NEANDER
    841 palavras | 4 páginas
  • Pronto
    1952 palavras | 8 páginas
  • Teoria da Relações Humanas
    1054 palavras | 5 páginas