3.Graduation pt2
Напишете програма, която изчислява средната оценка на ученик от цялото му обучение. На първия ред ще получите името на ученика, а на всеки следващ ред неговите годишни оценки. Ученикът преминава в следващия клас, ако годишната му оценка е по-голяма или равна на 4.00. Ако ученикът бъде скъсан повече от един път, то той бива изключен и програмата приключва, като се отпечатва името на ученика и в кой клас бива изключен.
При успешно завършване на 12-ти клас да се отпечата :
"{име на ученика} graduated. Average grade: {средната оценка от цялото обучение}"
В случай, че ученикът е изключен от училище, да се отпечата:
"{име на ученика} has been excluded at {класа, в който е бил изключен} grade"
Стойността трябва да бъде форматирана до втория знак след десетичната запетая.
вход |
изход |
Mimi 5 6 5 6 5 6 6 2 3 |
Mimi has been excluded at 8 grade |
Моя код :
www.pastebin.com/index/Eivp2xpM
Къде греша? Judge ми дава 44 / 100
PS: Как да направя линка от pastebin.com като го натиснете да ви откарва на страницата?
О, да то вярно, че пише 2 Не съм догледал тази подробност, мерси!!!
Добре
разгледах твоето решение
и функцията
else
{
notPassed += 1;
}
служи да се break-не след второто число по-малко от 4,.... и така програмата работи наистина, но не разбрах как програмат се break-ва като нямаме зададена функция break във while и защо notPassed е +1 , а не +2 , като notPassed има стойност отгоре "0".
значи докато цикъла върви има 2 условия или числото на класовете ад е по-малко или равно на 12 или notpassed да е по-малко от 2,
while на всяко завъртане на цикъла проверява 2те условия дали са верни и ако едното не е вярно се прекъсва сам.Затова втъре е проверката за <4 при първото минаване notpassed +=1 става равно на 1 на 2то става 2 и while ще се счупи като се опита да evaluate-не условията дали са верни. А защо notPassed е отвън защото иначе ако беше в while цикъла при всяко завъртане щеше да започва от 0 а аз искам да пазя конкретната му стойност за момента. Нямам нужда да си правя мой break тои самия while цикъл ще го направи за мен когато едно от 2те условия които съм му поставил се промени.