Ich sollte Benutzereingaben, ein float, dann verfolgen, wie oft 0,25, 0,10, 0,05 und 0,01 kann davon mit einem Zähler abgezogen werden. Dann soll es die Anzahl der Zählungen drucken. Aber als ich versuchte, den Code ausgeführt wird, es eine Benutzereingabe bekommt, aber wenn ich eine beliebige Anzahl versuchen, dies zeigt sich:Warum funktioniert meine Theke nicht?
greedy.c:18:14: runtime error: signed integer overflow: 2147483647 + 1 cannot be >represented in type 'int'
Bitte Fehler hinweisen, hier ist mein Code:
#include <stdio.h>
#include <cs50.h>
#include <math.h>
int main(void)
{
float b;
float a;
int count = 0;
printf("How much change is owed? ");
a = GetFloat();
do
{
b = a - 0.25;
count++;
}
while(a>0.25);
do
{
b = a - 0.10;
count++;
}
while(a>0.10);
do
{
b= a - 0.05;
count++;
}
while(a>0.05);
do
{
b= a- 0.01;
count++;
}
while(a>0.01);
printf("%d coins\n", count);
}
'while (a> 0,25);.?', Wie die Schleife enden soll, wenn 'a' ändert sich nie – tkausl
Die Botschaft ist klar, was ist Ihre ** spezifische ** Frage? – Olaf
@ Olaf mein Code kompiliert, aber es funktioniert nicht.Wenn ich Daten eingeben, ist es nicht in der Lage zu geben, was ich will. – user7091717