Форум программистов, компьютерный форум CyberForum.ru

Дан массив целых чисел. Верно ли, что он состоит только из простых чисел? - C++

Восстановить пароль Регистрация
 
 
zxcvbnm
1 / 1 / 0
Регистрация: 15.10.2009
Сообщений: 49
11.01.2013, 19:59     Дан массив целых чисел. Верно ли, что он состоит только из простых чисел? #1
Дан массив целых чисел. Верно ли, что он состоит только из простых чисел?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.01.2013, 19:59     Дан массив целых чисел. Верно ли, что он состоит только из простых чисел?
Посмотрите здесь:

C++ Дан линейный массив А, что состоит из N действительных чисел. Составить программу которая находит номер элемента, значение которого наименьшое
массив целых чисел состоит из n элементов, найти сумму простых чисел, входящих в него C++
C++ 2)Дан массив из N целых чисел. Получить из него массив отрицательных чисел и отсортировать его по возрастанию методом выбора
C++ Дан массив целых чисел. Верно ли, что все элементы в нем упорядочены пл убыванию
C++ Дан массив вещественных чисел. Выяснить верно ли, что количество положительных элементов не превышает 5
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
magirus
11.01.2013, 20:00
  #2
 Комментарий администратора 
не первый даже уже год на форуме, называйте темы информативно.
Дмитрий 93
74 / 59 / 5
Регистрация: 03.06.2011
Сообщений: 309
11.01.2013, 20:03     Дан массив целых чисел. Верно ли, что он состоит только из простых чисел? #3
простое число делится на 1 и на само себя. если в массиве элемент не равен 1, не равен 2, не делится на 2, 3 и 5 то оно простое
zxcvbnm
1 / 1 / 0
Регистрация: 15.10.2009
Сообщений: 49
11.01.2013, 20:04  [ТС]     Дан массив целых чисел. Верно ли, что он состоит только из простых чисел? #4
Цитата Сообщение от Дмитрий 93 Посмотреть сообщение
простое число делится на 1 и на само себя. если в массиве элемент не равен 1, не равен 2, не делится на 2, 3 и 5 то оно простое
а как это реализовать в программе?
Дмитрий 93
74 / 59 / 5
Регистрация: 03.06.2011
Сообщений: 309
11.01.2013, 20:17     Дан массив целых чисел. Верно ли, что он состоит только из простых чисел? #5
условным оператором

Добавлено через 7 минут
C++
1
2
 if (a[i]!=1 || a[i]!=2) cout<<a[i]<<"\t";
 else if (a[i]%2!=0 || a[i]%3!=0 || a[i]%5!=0) cout<<"No"<<endl;
zxcvbnm
1 / 1 / 0
Регистрация: 15.10.2009
Сообщений: 49
11.01.2013, 20:17  [ТС]     Дан массив целых чисел. Верно ли, что он состоит только из простых чисел? #6
а можете, пожалуйста, написать эту программу?
neske
1419 / 786 / 55
Регистрация: 26.03.2010
Сообщений: 2,694
11.01.2013, 20:19     Дан массив целых чисел. Верно ли, что он состоит только из простых чисел? #7
Дмитрий 93, число на простоту у нас уже проверяется тремя делителями? )
Дмитрий 93
74 / 59 / 5
Регистрация: 03.06.2011
Сообщений: 309
11.01.2013, 20:24     Дан массив целых чисел. Верно ли, что он состоит только из простых чисел? #8
как-то поленился запиливать один из тестов на простоту
zxcvbnm
1 / 1 / 0
Регистрация: 15.10.2009
Сообщений: 49
11.01.2013, 20:29  [ТС]     Дан массив целых чисел. Верно ли, что он состоит только из простых чисел? #9
можете пожалуйста выложить весь текст программы?
ValeryS
Модератор
6377 / 4843 / 442
Регистрация: 14.02.2011
Сообщений: 16,057
11.01.2013, 20:37     Дан массив целых чисел. Верно ли, что он состоит только из простых чисел? #10
Цитата Сообщение от Дмитрий 93 Посмотреть сообщение
если в массиве элемент не равен 1, не равен 2, не делится на 2, 3 и 5
число 49 не делится ни на 2 ни на 3 ни на 5 оно простое ???
темы про простые числа возникают чуть ли не каждую неделю, вплоть до тога что разработаны очень шустрые алгоритмы
воспользуйтесь уже поиском
David Sylva
 Аватар для David Sylva
1281 / 943 / 51
Регистрация: 17.05.2012
Сообщений: 2,686
11.01.2013, 20:39     Дан массив целых чисел. Верно ли, что он состоит только из простых чисел? #11
Можно вот так сделать
C++
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
#include <iostream>  
 
char* func(int* array, int size) 
{ 
    int count = 0, i = 0, j; 
 
    while(i < size) 
    {
    for ( j = 2; j <= array[i] / 2; j++)  
        if(!(array[i] % j)) break; 
    if( j > (array[i] / j)) 
        count++; 
    i++; 
    } 
    if( count == size) 
        return "Yes"; 
    else 
        return "No"; 
}
 
int main() 
{ 
    const int size = 10; 
    int array[size] = { 11, 2, 3, 11, 5, 13, 17, 3, 5, 11 }; 
    char*(*ptr)(int*, int); 
    ptr = func; 
 
    std::cout << ptr(array, size) << " "; 
}
Fareiro
15 / 15 / 1
Регистрация: 06.12.2012
Сообщений: 130
11.01.2013, 20:43     Дан массив целых чисел. Верно ли, что он состоит только из простых чисел? #12
C++
1
2
3
4
5
6
7
8
9
10
11
int simple(int n)
{
    int i;
    
    if(n <= 1)
       return 0;
    for(i = 2; i <= sqrt(n); i++)
       if(n % i == 0)
          return 0;
    return 1;
}
можно например сделать счетчик, и каждый раз когда функция возвращает true увеличивать его на 1. В конце сравнить размер массива и счетчика. Если равны - написать что состоит из простых чисел, если отличаются - то из разных... как-то так

Ну вот, уже опередили
ValeryS
Модератор
6377 / 4843 / 442
Регистрация: 14.02.2011
Сообщений: 16,057
11.01.2013, 20:45     Дан массив целых чисел. Верно ли, что он состоит только из простых чисел? #13
David Sylva, ты же вроде тоже смотрел эти обсуждения?
Цитата Сообщение от David Sylva Посмотреть сообщение
for ( j = 2; j <= array[i] / 2; j++)
до корня нужно считать
для маленьких чисел это ерунда
а для чисел типа 1 000 000 и больше
или 1000 итераций или 500 000 есть разница

Добавлено через 1 минуту
Цитата Сообщение от Fareiro Посмотреть сообщение
можно например сделать счетчик, и каждый раз когда функция возвращает true увеличивать его на 1.
зачем
один раз вернули число не простое, и все цикл можно завершать ибо
Цитата Сообщение от zxcvbnm Посмотреть сообщение
Верно ли, что он состоит только из простых чисел
уже ложь
David Sylva
 Аватар для David Sylva
1281 / 943 / 51
Регистрация: 17.05.2012
Сообщений: 2,686
11.01.2013, 20:47     Дан массив целых чисел. Верно ли, что он состоит только из простых чисел? #14
Цитата Сообщение от ValeryS Посмотреть сообщение
David Sylva, ты же вроде тоже смотрел эти обсуждения?
не не смотрел.
Я думаю здесь не критично, то о чём ты говоришь.В том плане, что это обычная задача и не обязательно её решать
самым лучшим из алгоритмов.
Fareiro
15 / 15 / 1
Регистрация: 06.12.2012
Сообщений: 130
11.01.2013, 20:47     Дан массив целых чисел. Верно ли, что он состоит только из простых чисел? #15
ValeryS, ну или так...
Только хардкор
ValeryS
Модератор
6377 / 4843 / 442
Регистрация: 14.02.2011
Сообщений: 16,057
11.01.2013, 20:50     Дан массив целых чисел. Верно ли, что он состоит только из простых чисел? #16
Цитата Сообщение от Fareiro Посмотреть сообщение
for(i = 2; i <= sqrt(n); i++)
можно в два раза убыстрить
C++
1
2
3
4
5
    if(n % 2 == 0)
          return 0;
 for(i = 3; i <= sqrt(n); i+=2)
      if(n % i == 0)
          return 0;
zxcvbnm
1 / 1 / 0
Регистрация: 15.10.2009
Сообщений: 49
11.01.2013, 21:08  [ТС]     Дан массив целых чисел. Верно ли, что он состоит только из простых чисел? #17
а можно сделать с циклом do...while и попроще)?

Добавлено через 15 минут
пожалуйста
David Sylva
 Аватар для David Sylva
1281 / 943 / 51
Регистрация: 17.05.2012
Сообщений: 2,686
11.01.2013, 21:10     Дан массив целых чисел. Верно ли, что он состоит только из простых чисел? #18
zxcvbnm Вы к кому обращаетесь? Если ко мне, то мой код очень простой.Спросите, что не понятно конкретно?
zxcvbnm
1 / 1 / 0
Регистрация: 15.10.2009
Сообщений: 49
11.01.2013, 21:11  [ТС]     Дан массив целых чисел. Верно ли, что он состоит только из простых чисел? #19
Цитата Сообщение от David Sylva Посмотреть сообщение
zxcvbnm Вы к кому обращаетесь? Если ко мне, то мой код очень простой.Спросите, что не понятно конкретно?
вы можете написать с циклом do...while?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.01.2013, 21:13     Дан массив целых чисел. Верно ли, что он состоит только из простых чисел?
Еще ссылки по теме:

C++ Дан массив целых чисел. Верно ли, что сумма квадратов элементов массива есть пятизначное число
C++ Дан массив целых чисел. Выяснить верно ли, что сумма элементов массива есть четное число
Дан массив вещественных чисел. Выяснить верно ли, что количество положительных элементов не превышает 5 C++

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

Или воспользуйтесь поиском по форуму:
David Sylva
 Аватар для David Sylva
1281 / 943 / 51
Регистрация: 17.05.2012
Сообщений: 2,686
11.01.2013, 21:13     Дан массив целых чисел. Верно ли, что он состоит только из простых чисел? #20
То же самое с do while
C++
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
#include <iostream>  
 
char* func(int* array, int size) 
{ 
    int count = 0, i = 0, j; 
 
    do
    {
    for ( j = 2; j <= array[i] / 2; j++)  
        if(!(array[i] % j)) break; 
    if( j > (array[i] / j)) 
        count++; 
    i++; 
    } while(i < size);
    if( count == size) 
        return "Yes"; 
    else 
        return "No"; 
}
 
int main() 
{ 
    const int size = 10; 
    int array[size] = { 11, 2, 3, 11, 5, 13, 17, 3, 5, 11 }; 
    char*(*ptr)(int*, int); 
    ptr = func; 
 
    std::cout << ptr(array, size) << " "; 
}
Yandex
Объявления
11.01.2013, 21:13     Дан массив целых чисел. Верно ли, что он состоит только из простых чисел?
Ответ Создать тему
Опции темы

Текущее время: 07:02. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru