Я недавно (очень, совсем недавно) получил программирование на C++. Я пишу программу, чтобы найти наивысшее простое число ниже prime
. Тем не менее, когда я выполнить код, ничего не отображаются, а в консоли он говорит, что это:C++ - ничего не отображается в консоли, никаких ошибок не отображается, -1 возвращается
Process returned -1 (0xFFFFFFFF) execution time : 0.409 s
Press ENTER to continue.
Я пробовал некоторые отладки, и я понял, проблемный участок является линией 17-19 (if
), но я не могу понять, что я делаю неправильно.
C++
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
//cout << "maybe here?";
int prime = 1000;
//cout << "here";
while(true){
//cout << "here2";
int testr = ceil(sqrt(prime));
cout << testr;
bool isprime = true;
for(int i = 0; i < testr; i++){
cout << i << " ";
if(testr % i == 0){
isprime = false;
}
}
if(isprime){
break;
}else{
prime--;
}
}
cout << prime;
}
Любой помощь приветствуется! Благодаря!
Дополнительная информация: Я использую код :: Блоки на Mac OSX 64 бит. Я привык к программированию на Java, поэтому это может быть просто C++, о котором я не знаю.
Как вы это поняли? – SergeyA
@SergeyA Основная отладка - комментируйте вещи, пока не найдете то, что нарушает код. – michal
@michal - это * НЕ * базовая отладка, это называется «пробная ошибка». Базовая отладка запускает вашу программу под отладчиком, шаг за шагом и исследует значения переменных. –