Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
0 / 1 / 4
Регистрация: 20.10.2013
Сообщений: 270
1

Поменять местами соответственные элементы массива, если хотя бы одно из них простое число

07.04.2015, 18:13. Показов 759. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
#include <iostream>
#include <math.h>
 
using namespace std;
 
int main ()
{
int a[3];
int b[3];
 
...
 
cout << "Введите три символа: " << endl;
cin >> b[0] >> b[1] >> b[2];
 
...
 
//сама функция проверки
for (int i = 0; i < 3; i++)
{
if (b[i] == 2 && a[i] == 2) // проверка, если число 2, то значит оно простое
{
cout << b[i] << ' ';
cout << a[i] << ' ';
continue;
}
 
if (b[i] % 2 == 0 || b[i] == 1 && a[i] % 2 == 0 || a[i] == 1) //если число четное или равно едицице, если это так то..
continue;
 
int isPrime = 1;
 
for (int j = 3; j <= (int)sqrt(b[i]); j += 2) //делим число только на нечет.числа от 3ки до корня (вкл.), если не делится ни на одно из данного диапазона, то значит число простое
if (b[i] % j == 0)
{
isPrime = 0;
break;
}
for (int q = 3; q <= (int)sqrt(a[i]); q += 2)
if (a[i] % q == 0)
{
isPrime = 0;
break;
}
 
if (isPrime == 1)
{
cout << "Простые числа массива a: " << a[i] << endl;
cout << "Простые числа массива b: " << b[i] << endl;
}
 
 
}
 
//вот тут нужно поменять местами соответственные элементы массива, как это сделать?
 
}
Добавлено через 48 секунд
P.S В отдельную функцию заносить не нужно! Все делается в мэйне!
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
07.04.2015, 18:13
Ответы с готовыми решениями:

Поменять местами столбец матрицы A, в котором имеется хотя бы одно простое число, со строкой матрицы B
Меняются местами столбец матрицы A, в котором имеется хотя бы одно простое число, со строкой...

Если среди элементов матрицы есть хотя бы одно простое число, отсортировать элементы ее строк по возрастанию
Дана матрица А(M,N). Если среди элементов матрицы есть хотя бы одно простое число, отсортировать...

Если в матрице есть хотя бы одно простое число, то повернуть ее на 180 градусов против часовой стрелки
Дан даумерный целочисленный массив если среди элементов есть хотя бы одно простое число, то...

Поменять местами соответственные элементы в массивах А и В
Поменять местами соответственные элементы в массивах А и В, если хотя бы один элемент является...

3
515 / 407 / 188
Регистрация: 08.04.2013
Сообщений: 1,739
07.04.2015, 19:46 2
вот алгоритм нахождения простого числа, может упростит твою жизнь
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
int main()
{
    int n; // Проверяемое число
    int  is_prime = true; // булев флаг //Предположим что число простое, пока не докажем обратное
 
    cout <<"Введите число и нажмите ENTER -> ";
    cin >>  n;
//  i=2;        //Проверка делимости от 2 до sqrt(n)
    for (int i=2; i <=sqrt((double)n);i++)
    {
        if (n%i == 0) {
             is_prime =false; //не простое число и выход без продолжения
             break;
        }
    }
    if (is_prime)
        cout << "Число простое.";
    else
        cout << "Число не простое.";  
 
}
1
0 / 1 / 4
Регистрация: 20.10.2013
Сообщений: 270
07.04.2015, 21:21  [ТС] 3
Цитата Сообщение от marat_miaki Посмотреть сообщение
вот алгоритм нахождения простого числа, может упростит твою жизнь
За упрощенный алгоритм спасибо(переделаю его сам для массивов). А вот замены местами соотв.элементов массива как сделать то?
0
515 / 407 / 188
Регистрация: 08.04.2013
Сообщений: 1,739
07.04.2015, 21:28 4
примерно так if(да) {temp=a[k]; a[k]=a[k+1];a[k+1]=temp;} главное за пределы массива не вылететь
0
07.04.2015, 21:28
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
07.04.2015, 21:28
Помогаю со студенческими работами здесь

Если среди элементов массива есть хотя бы одно число больше 100, то все элементы массива поделить на 100.
Дан массив действительных чисел a1,...,an. Если среди элементов массива есть хотя бы одно число...

Массив. Если среди элементов массива есть хотя бы одно число больше 100, то все элементы массива поделить на 100
Помогите пожалуйста. Дан массив действительных чисел а1,…, аn. Если среди элементов массива есть...

Если все числа четные, каждое из них уменьшить в 2 раза, если хотя бы одно - четное, увеличить каждое число на 20%...
Даны три целых положительных числа. Если все они четные, каждое число уменьшить в два раза, если...

Определить, содержит ли последовательность хотя бы одно простое число
Вводится последовательность из N целых положительных элемен-тов. Определить, содержит ли...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru