bool calcular(int numero, int divisor){ bool resultado; if(divisor == 1) return false; if(numero % divisor == 0) resultado = true; else resultado = false; return resultado || calcular(numero, divisor - 1); }
main() { //vars int A[6], B[6]; printf("OPERACOES COM VETORES\n\n"); lerVetor(A, 6); lerVetor(B, 6); imprimirVetor(A, 6); imprimirVetor(B, 6); calcular(A, 6, B); }
void verificarExpresion(char** cad){ String cadena = *cad; int length = strlen(cadena); /** Auxiliares para continuar con el ciclo*/ int i = 0; StackEntry op1, op2, res; int posError; bool evalacion = true; /** Pila para el evaluador */ ptrNodoPila pila = NULL; while(cadena[i] != '\0' && evalacion == true){ /** Validamos si se trata de un operando */ if(esOperando(cadena[i])){ int aux = cadena[i] -'0'; push(&pila,aux); } else /**Validamos si es un operador */ if (esOperador(cadena[i])){ /** Valida si existen al menos dos operandos */ if(!stackEmpty(&pila)){ op2 = pop(&pila); if (!stackEmpty(&pila)){ op1 = pop(&pila); res = calcular(op1, cadena[i], op2); push(&pila,res); }else{ printf("\nSe esperaba un operando antes del operador %c en lo posicion %d\n",cadena[i],i+1); break; } }else{ printf("\nSe esperaban dos operandos antes del operador %c en lo posicion %d\n",cadena[i],i+1); break; } }else{ printf("Caracter invalido en la posicion %d\n",i+1); break; } /** Valida que haya quedado solo un numero en la pila */ i++; } if(!stackEmpty(&pila)){ res = pop (&pila); if(stackEmpty(&pila)) printf("\n<<< Expresion posfija valida!>>>\n<<< Resultado final:\t%d>>>\n",res); else printf("\n>>> Se esperaban mas operadores\n"); } }
int main(int argc, const char **argv){ int numero; int divisor = numero; printf("Mete un número: "); scanf(" %i", &numero); if (calcular(numero, divisor - 1)) printf("No es un número primo\n"); else printf("Si es un número primo\n"); return EXIT_SUCCESS; }
main(){ //Personalização de Cor system("color 17"); //Configurando Idioma setlocale(LC_ALL, "Portuguese"); system("cls"); //Inicio tela(); float lado, area, perimetro; printf("\n\n Insira o lado do quadrado: "); cin>>lado; calcular(lado,&area,&perimetro); cout<<"\n\n\n\n Lado: "<<area<<"\n\n Perimetro: "<<perimetro; getch(); }
int loop(){ //inicia a pilha usada pelo programa pilha *p = inicia(); char g_char[MAX_LENTH]; //exibe o cabeçalho do programa if(!RUN_CODES) exibeHeader(); //loop principal while(1){ gets(g_char); if(strlen(g_char) > 1) tiraEspaco(g_char); //define a saida do programa char sair_s[] = "s"; char sair_S[] = "S"; if(!strcmp(g_char, sair_S) || !strcmp(g_char, sair_s)) return 1; //define a entrada em help char help_h[] = "h"; char help_H[] = "H"; if(!strcmp(g_char, help_h) || !strcmp(g_char, help_H)){ if(!RUN_CODES) exibeHelp(); fflush(stdin); continue; } //entra na função que trata cada char da string informada pelo usuario int erro = calcular(g_char, p); if(erro == 1){ if(!RUN_CODES){ exibeHeader(); printf("\nErro! Para fazer um calculo, inicie com E\n"); } } } return 1; }
void main() { char op; int n; double a[20]; double b[20]; double c[20]; do { menu(); scanf("%c", &op); switch(op) { case '1': clrscr(); ingresar(a, &n); break; case '2': calcular(a, b, c, n); clrscr(); printf("\n Los calculos han finalizado correctamente...."); getch(); break; case '3': clrscr(); desplegar(a, b, c, n); getch(); break; case '4': op = 'n'; } }while(op != 'n'); }