Даже при минимальном количестве 10 цифр для ввода я не получаю ошибок, но мой код сразу же срабатывает при запуске. Мне также интересно, что мне делать, если у меня возник вопрос, похожий на другой вопрос, который я уже задал, но на еще одну новую проблему?Сбой сразу после запуска
#include <iostream>
#include <cmath>
#include <fstream>
#include <cstdlib>
#include <vector>
using namespace std;
int primer(int max);
int main()
{
primer(5);
system("pause");
return 0;
}
int primer(int max){
vector<int> a;
a[1]=2;
for (int i=2;i<=max;i++){
bool prime=true;
for (int ii=0;ii<a.size();ii++) {
if (i/a[ii]==floor(i/a[ii])) {
prime=false;
}
}
if (prime==true) {
a.push_back(i);
}
}
for (int iii=0;iii<=a.size();iii++) {
cout << a[iii] << endl;
}
}
У меня нет ошибок, но скомпилированный код немедленно сработает. я изменил его на
#include <iostream>
#include <cmath>
#include <fstream>
#include <cstdlib>
#include <vector>
using namespace std;
int primer(int max);
int main()
{
primer(5);
system("pause");
return 0;
}
int primer(int max){
vector<int> a;
a.push_back(2);
for (double i=2;i<=max;i++){
bool prime=true;
for (int ii=0;ii<a.size();ii++) {
if (i/a[ii]==floor(i/a[ii])) {
prime=false;
}
}
if (prime) {
a.push_back(i);
}
}
for (int iii=0;iii<=a.size();iii++) {
cout << a[iii] << endl;
return a.size();
}
}
Я обратился все ваши проблемы. Он по-прежнему не возвращает ошибок и по-прежнему падает.
Необходимо отправить сообщение об ошибке. Также вам не нужно использовать переменные типа 'i',' ii' и 'iii', особенно все в одном коде. – Falmarri
Вы пытались отладить его вообще? –
Второе независимое предложение первого предложения указывало, что у меня нет ошибок. Я только что отредактировал и повторил его в конце, чтобы укрепить его. – TimeCoder