drunys Postado Julho 26, 2014 Denunciar Share Postado Julho 26, 2014 Como pego o resto da divisão entre valores de ponto flutuante? Eis uma parte do código que quero usar esse comando: #include <stdio.h> #include <math.h> int main(void) { float v=576.73; float n1, n2, n3, n4, n5, n6, m1, m2, m3, m4, m5, m6; //scanf("%f", &v); printf("NOTAS:"); if(v >= 100){ n1 = v/100.00; printf("%d nota(s) de R$ 100,00\n", n1); }else printf("0 nota(s) de R$ 100,00\n"); if(v >= 50){ v%=100.00; //aqui é onde está dando o seguinte erro: ivalid operands to binary % (have 'float' and 'double') n2= v/50; printf("%d nota(s) de R$ 50,00\n", n2); }else printf("0 nota(s) de R$ 50,00\n"); ....... Aqui o link do que estou querendo fazer: http://www.urionlinejudge.com.br/repository/UOJ_1021.html Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ScreenBlack Postado Julho 30, 2014 Denunciar Share Postado Julho 30, 2014 Trabalhar com tipo float pode dar dor de cabeça em certas situações. Isso é normal. :P Precisamos definir certos limites quanto a quantidade de casas após a vírgula. No seu caso, você vai limitar em 2 casas, portanto, daria pra fazer assim: double numero = 15.5; int inteiro = numero / 1; // Salva a parte inteira do float em uma variável do tipo inteiro //int inteiro = (int) numero; // Usando typecast também é possível salvar a parte inteira do float em uma variável do tipo inteiro double resultado = (numero - inteiro) * 100; // Pega a parte fracionada, multiplica por cem, convertendo-a para inteiro printf("Inteiro: %d\n", inteiro); printf("Fracao: %d\n", (int) resultado); // Typecast de float para inteiro Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
drunys
Como pego o resto da divisão entre valores de ponto flutuante? Eis uma parte do código que quero usar esse comando:
Aqui o link do que estou querendo fazer: http://www.urionlinejudge.com.br/repository/UOJ_1021.html
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.