Мне просто интересно, что я сделал не так здесь, потому что, когда программа выполняется, она работает просто отлично. Я новичок в программировании и очень потерян. Любой совет будет замечательным!CS50: «ожидаемое приглашение для ввода, а не код выхода из 0», не слишком уверен в том, что я делаю неправильно здесь
#include <stdio.h>
#include <cs50.h>
#include <math.h>
int main(void)
{
printf("Days in Month:\n");
int days = GetInt();
for (; days < 28 || days > 31; days = GetInt())
{
printf("No month has that amount of days! Please try again.\n");
}
printf("Pennies on first day:\n");
int pennies = GetInt();
for (; pennies < 0; pennies = GetInt())
{
printf("You can't have negative pennies! Please try again.\n");
}
if (pennies == 1)
printf("$%.2f",pow ((pennies + 1), (days - 1)));
else
printf("$%.2f",pow (pennies, days));
}
Check50 выходы:
~/workspace/chapter1/ $ check50 1617.chapter1.pennies pennies.c
:) pennies.c exists
:) pennies.c compiles
:(28 days, 1 penny on first day
\ expected output, but not "$134217728.00"
:(31 days, 1 penny on first day
\ expected output, but not "$1073741824.00"
:(29 days, 2 pennies on first day
\ expected output, but not "$536870912.00"
:(30 days, 30 pennies on first day
\ expected output, but not "$20589113209464899002378237447530552256..."
:) rejects days not 28, 29, 30, or 31
:(rejects non-positive pennies
\ expected prompt for input, not exit code of 0
:) rejects a non-numeric days input of "foo"
:) rejects a non-numeric penny input of "foo"
:) rejects a non-numeric days input of ""
:) rejects a non-numeric penny input of ""
Как вы можете видеть, что это говорит, что он принимает на себя отрицательные входы и не приносит правильное количество денег. Это ошибка в check50, или я сделал что-то неправильно?
Не могли бы вы сообщить, в чем проблема? Я думаю, вы просто делаете математику неправильно. – Schwern
@ Шварн: Да, ты прав. Я неправильно читаю его с лишними лишними парами круглых скобок. –