Предмет: Информатика, автор: motorovadasha

Найдите ошибку в коде с++. Пожалуйста, СРОЧНО!!! ДАМ 30!!!
#include
using namespace std;
int main() {
int x, k = 0;
int a,K,N, b;
cout << "vvedite N "<< endl;
cin>> N;
cout << "vvedite K "<< endl;
cin>> K;
do{
for (int i = 1; i <= x; i++)
if (x % i == 0 )
k++;
if (k<=K)
b++;
}
while(a<=N && a<=1);

cout << b;
}


1fadsb: Что должен выполнять этот код?
motorovadasha: Нужно найти количество натуральных чисел от 1 до N, у которых количество делителей не больше K.
1fadsb: включительно?
motorovadasha: да

Ответы

Автор ответа: 1fadsb
2

Ответ:

Снизу

Объяснение:

Во первых в #include ты не объявляешь никакую из библиотек:

<bits/stdc++.h> <iostream> и т.д.

Мой код вот:

#include <bits/stdc++.h>

using namespace std;

int main() {

int n,k;

cout << "vvedite n, potom k";

cin >> n >> k;

int ans = 0,col = 0;

for(int i = 1;i <= n;i++) {

   for(int j = 1;j <= i;j++) {

       if(i % j == 0) {

           col++;

       }

       if(col > k) {

           break;

       }

   }

   if(col > k) {

       col = 0;

   } else {

       ans++;

       col = 0;

   }

}

cout << ans;

}

Мы создаём цикл в цикле где первый перебирает все числа от 1 до N, а второй все числа от 1 до i и смотрит делится или нет. Хотя можно сделать до j в квадрате. Надеюсь помог.

Похожие вопросы
Предмет: Другие предметы, автор: Устян
Предмет: Русский язык, автор: olyashubina
Предмет: Русский язык, автор: обычныйпарень
Предмет: Математика, автор: олеся537