@Pbalordorbaor

Объясните пожалуйста на каком моменте кода я получил случайное число в выводе?

#include <iostream>

int main() {
    int a = 4668;
    int b = 10415;
    int c;
    for(int i=a; i<b; i++) {
        if(i%3==0 || i%11==0) {
            if(i%2!=0 && i%13!=0 && i%22!=0 && i%33!=0) {
                c++;
            }
        }
    }
    std::cout << c << "\n";
}

Что происходит у меня в консоли:
cyrill@monkey:~/VS Code/test$ g++ programm.cpp -o programm
cyrill@monkey:~/VS Code/test$ ./programm
1680771509
cyrill@monkey:~/VS Code/test$ ./programm
-1092250235
cyrill@monkey:~/VS Code/test$ ./programm
-1058511643
cyrill@monkey:~/VS Code/test$ ./programm
1213003333
cyrill@monkey:~/VS Code/test$ ./programm
-359841931
cyrill@monkey:~/VS Code/test$ ./programm
-127210811


Предполагалось что программа, просмотрев числа в заданном диапазоне, отберёт числа делящиеся на 3 или 11 и не делящиеся на 2, 13, 22, 33, а потом выведет их количество в консоль.
  • Вопрос задан
  • 64 просмотра
Решения вопроса 1
fzfx
@fzfx
18,5 дм
вот на этом:
int c;
если вы не хотите получать подобные ошибки, не забывайте, что перед использованием переменной её надо объявить и инициализировать. вы сделали только первое.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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