Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Vilarim

[Resolvido] Converter uma variavel float para int

Recommended Posts

Preciso que meu programa : some, divida, multiplique, subtraia e porcentagem... usando string e no final fale se o resultado é um numero primo ou não. E só poderar sair quando for digitado "Sair". ps: eu começei a programar a pouco tempo em C.

#include <stdio.h>
#include <conio.h>
#include <stdlib.h> 
int main()
{  
    int cont, op,  aux=1;   
    int iresul;
    float resul;
    float va1,va2;
    
    resul=(float)iresul; 
    while (aux==1)
     {
     cont = 2;
         system("cls");
         system ("color 9f");
         printf("\n Qual das opcoes aritmetica abaixo deseja realizar? \n \n Digite 1 - Soma \n Digite 2 - Subtracao \n Digite 3 - Multiplicacao \n Digite 4 - Divisao \n Digite 5 - porcentagem \n \n                      ");
         scanf("%d", &op);
         printf("\n Digite o primeiro valor da operacao : ");
         scanf("%d", &va1);
         printf("\n Digite o segundo valor da operacao : ");
         scanf("%d", &va2);
         if (op==1)
         resul=  va1+ va2;       
         else
          if (op==2)
          resul= va1- va2;
          else
            if (op==3)
             resul= va1* va2;
            else
              if (op==4)
              resul= va1/ va2; 
                else
                if (op==5)
                resul=(va1/100)*(va2);  
                          
                printf("\n resultado obtido e   : %2.2d \n", resul);    
                 // Descobrir se o numero é primo  
                 
                for (cont=2; cont<(iresul/2);cont++)
                {
                    if ((iresul%cont)==0) 
                    {
                    break;
                    }
                }      
                   if (cont>=(iresul/2))
                 printf("\n %d e' Primo\n");
                    else    
                  printf("\n %d nao e' primo\n");
                //Sair ou Continuar   
                   printf("\nDeseja realizar um novo calculo? (1)Sim (2)Nao \n \n");
                   scanf("%d",&aux);              
}
     system("pause");
     getch();
     return 0;
}

O resultado fica dando 0 e tela fica correndo... alguem pode me dizer como eu posso arrumar?

 

desculpa pelos erros de portugues...eu escrevi correndo..

Compartilhar este post


Link para o post
Compartilhar em outros sites

como assim usando strings??

você qr q as leituras, ao invez de serem numericas sejam em formato string?

 

[]s

 

---

Título Editado:

 

Ajuda para converter uma varial float para int http://forum.imasters.com.br/public/style_emoticons/default/seta.gif Converter uma variavel float para int

Compartilhar este post


Link para o post
Compartilhar em outros sites

como assim usando strings??

você qr q as leituras, ao invez de serem numericas sejam em formato string?

 

[]s

 

isso mesmo.. preciso que seja em formato string... eu ja quebrei a cabeça tentado fazer

Compartilhar este post


Link para o post
Compartilhar em outros sites

tipo assim:

 

#include <stdio.h>
#include <stdlib.h>

int menu(){
    int op;
    printf("\nQual das opcoes aritmetica abaixo deseja realizar? \n \n");
    printf(" Digite 1 - Soma \n Digite 2 - Subtracao \n Digite 3 - Multiplicacao \n Digite 4 - Divisao \n Digite 5 - porcentagem \n \n");
    scanf("%d", &op);
    return op;
}

void primo(float resul){
    int ver = (int) resul;
 //
}

int main(){
        int op, sair=1;
        char N1[10], N2[10];
        float resul;
        memset(N1, '\0', sizeof(char)*10);
        memset(N2, '\0', sizeof(char)*10);
        while(sair==1){
            op=menu();
            printf("\n Digite o primeiro valor da operacao : ");
            scanf("%s%*c", N1);
            printf("\n Digite o segundo valor da operacao : ");
            scanf("%s%*c", N2);
            if      (op == 1) resul = atoi(N1) + atoi(N2);
            else if (op == 2) resul = atoi(N1) - atoi(N2);
            else if (op == 3) resul = atoi(N1) * atoi(N2);
            else if (op == 4) resul = (float)atoi(N1) / atoi(N2);
            else if (op == 5) resul = (float)((float)atoi(N1)/100) * atoi(N2);
            printf("\n resultado obtido e   : %.2f \n", resul);
            primo(resul);
            printf("\nDeseja realizar um novo calculo? (1)Sim (2)Nao \n \n");
            scanf("%d",&sair);
    }
     return 0;
     system("pause"); //DEPOIS DE UMA LIDA AKI: http://forum.imasters.com.br/index.php?/topic/336835-tutorial-systempause-e-fflushstdin/
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.