@DufGut

В чем ошибка блок-схемы?

#include <iostream>
using namespace std;

int main() {
    setlocale(0, "");
    int n, mark;
    float them_asses = 0;
    cout << "Введите количество оценок: ";
    cin >> n;

    if (n <= 0) {
        cout << "Количество оценок должно быть более 0." << endl;
        return 1;
    }

    for (int i = 0; i < n; i++) {
        cout << "Введите оценку" << i + 1 << ": ";
        cin >> mark;

        if (mark < 0 || mark > 12) {
            cout << "Оценка должна быть между 0 и 12. Введите еще раз." << endl;
            i--;
        }
        else {
            them_asses += mark;
        }
    }

    double average = them_asses / n;
    cout << "Средний балл:  " << average << endl;
}

65316a831a97d680102462.png
  • Вопрос задан
  • 98 просмотров
Решения вопроса 1
@Acaunt
Я последний раз трогал блок схемы в начальных классах поэтому возможно не совсем правильно нарисовал. Но основную мысль думаю можно увидеть.
653189808fb8a794620742.png
Первое что я заметил это перепутаны логические выходы проверки на количество оценок.
Второе отсутствует операция сложения оценок.
Третье как по мне не очень понятен был показан у тебя пути работы цикла, не было стрелки того куда идти для повторения цикла и логический выход из цикла.
Возможно ещё что-то, но я не совсем хорошо помню эти блок схемы.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы