С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
silver-x
0 / 0 / 0
Регистрация: 13.11.2012
Сообщений: 34
#1

Построить массив p[1]=2, p[2],...,p[n], где p[1]=2, p[2]=3, ...,p[n] - n-е простое число - C++

13.11.2012, 18:48. Просмотров 289. Ответов 5
Метки нет (Все метки)

Друзья! Прошу помощи с задачками, кто чем может. А то препод сказал НАДО. А меня даже чайником назвать нельзя( Вот эти задачи.
4. Построить массив p[1]=2, p[2],...,p[n], где p[1]=2, p[2]=3, ...,p[n] - n-е простое число.
Заранее спасибо
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.11.2012, 18:48
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Построить массив p[1]=2, p[2],...,p[n], где p[1]=2, p[2]=3, ...,p[n] - n-е простое число (C++):

Дано простое число. Составить функцию, которая будет находить следующее за ним простое число - C++
Дано простое число. Составить функцию, которая будет находить следующее за ним простое число.

Дано простое число. Составить функцию,которая будет находить следующее за ним простое число. - C++
дано простое число.составить функцию,которая будет находить следующее за ним простое число.

Дано простое число. Составить функцию, которая будет находить следующее за ним простое число - C++
Дано простое число. Составить функцию, которая будет находить следующее за ним простое число

Дано простое число. Составить функцию, которая будет находить следующее за ним простое число. - C++
6.2.2. Помогите, пожалуйста, решить задачи в С++ с помощью функций. Дано простое число. Составить функцию, которая будет находить...

Обнулить строки матрицы, где находится наибольшее простое число - C++
Задана матрица A(n,m). Обнулить те строки, где находится наибольшее простое число. Вывести сообщение, если простых чисел нет. ...

Дан двумерный массив целых чисел. Упорядочить по возрастанию элементы тех строк этого массива, где на главной диагонали простое число - Turbo Pascal
Дан двумерный массив целых чисел. Упорядочить по возрастанию элементы тех строк этого массива, где на главной диагонали простое число. ...

5
alex_289
3 / 3 / 0
Регистрация: 27.05.2012
Сообщений: 12
13.11.2012, 20:03 #2
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
 
using namespace std;
 
int main()
{
    int sz;
    cout<<"enter array size: ";
    cin>>sz;
    int mas[sz];
    for(int i=0;i<sz;++i)
        mas[i]=i+1;
    cout<<"Array: ";
    for(int j=0;j<sz;++j)
        cout<<mas[j];
    return 0;
}
0
Roof
154 / 154 / 10
Регистрация: 03.11.2010
Сообщений: 393
13.11.2012, 23:27 #3
alex_289, Ваш код неверен, ведь в задании сказано - что в массиве должны быть только простые числа. А у Вас просто подряд числа от 1 до sz.
Такое использование массивов переменной длины может далеко не на всех компиляторах поддерживаться, насколько мне изхвестно. Лучше взять динамические структуры или использовать stl контейнеры.
0
alex_289
3 / 3 / 0
Регистрация: 27.05.2012
Сообщений: 12
14.11.2012, 04:24 #4
sorry mistake
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
#include <iostream>
 
using namespace std;
 
bool IsSimple(long *A, int n, long val)
{
    for(int i = 0; i < n; i++)
    {
        if(A[i] * A[i] > val) return true;
        if(val % A[i] == 0) return false;
    }
    return true;
}
 
void GenerateFirstNSimple(long *A, int n)
{
    A[0] = 2;
    int cur_n = 1;
    long cur_val = 3;
    while(cur_n < n)
    {
        if(IsSimple(A, cur_n, cur_val) == true) A[cur_n++] = cur_val;
        if(cur_val > 10 && (cur_val + 2) % 5 == 0) cur_val += 4;
        else cur_val += 2;
    }
}
 
int main()
{
    int sz;
    cout<<"enter size: ";
    cin>>sz;
    long *Array = new long[sz];
    GenerateFirstNSimple(Array, sz);
    for(int i = 0; i < sz; i++)
    {
        if(i % 20 == 0) cout<<"\n";
        cout<<Array[i]<<" ";
    }
    delete[]Array;
    return 0;
}
0
Pavell
14 / 14 / 0
Регистрация: 13.11.2012
Сообщений: 28
14.11.2012, 08:19 #5
Цитата Сообщение от alex_289 Посмотреть сообщение
C++
1
2
3
4
int sz;
cout<<"enter array size: ";
cin>>sz;
int mas[sz];
при таком объявлении массива переменной sz должно быть присвоено значение перед компиляцией. Либо (то о чем подразумевали вы) массив должен быть объявлен динамически, как тут:
Цитата Сообщение от alex_289 Посмотреть сообщение
C++
1
2
3
4
int sz; 
cout<<"enter size: "; 
cin>>sz; 
long *Array = new long[sz];
0
Roof
154 / 154 / 10
Регистрация: 03.11.2010
Сообщений: 393
14.11.2012, 14:32 #6
Цитата Сообщение от Pavell Посмотреть сообщение
при таком объявлении массива переменной sz должно быть присвоено значение перед компиляцией. Либо (то о чем подразумевали вы) массив должен быть объявлен динамически, как тут:
Некоторые компиляторы поддерживают массивы переменной длины. Т.е. необязательно знать размер массива на этапе компиляции. Ищите информацию в google по фразе "массивы переменной длины c++"
Но массивы переменной длины не являются динамическими массивами.
0
14.11.2012, 14:32
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.11.2012, 14:32
Привет! Вот еще темы с ответами:

Дано простое число. Составить функцию, которая будет находить следующее за ним простое число. - PHP
Дано простое число. Составить функцию, которая будет находить следующее за ним простое число.

Дано простое число. Составить функцию, которая будет находить следующее за ним простое число - Pascal ABC
Помогите пожалуйста решить задачу в Паскале Дано простое число. Составить функцию, которая будет находить следующее за ним простое число.

Дано простое число. Составить функцию, которая будет находить следующее за ним простое число - Visual Basic
Дано простое число. Составить функцию, которая будет находить следующее за ним простое число!

Дано простое число. Составить функцию, которая находит следующее за ним простое число - Turbo Pascal
Дано простое число. Составить функцию, которая находит следующее за ним простое число.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.