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

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

Войти
Регистрация
Восстановить пароль
 
grom73
0 / 0 / 0
Регистрация: 27.02.2014
Сообщений: 19
#1

Упорядочить массив целых положительных чисел по возрастанию, определить номер минимального простого числа - C++

09.04.2014, 19:16. Просмотров 365. Ответов 1
Метки нет (Все метки)

помогите исправить программу на с++

Упорядочить массив целых положительных чисел по возрастанию, определить но-
мер минимального простого числа до и после упорядочивания массива. Создать
функции для сортировки массива и определения простого числа.



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
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
#include <iostream>
#include <time.h>
#include<stdlib.h>
#include <iomanip>
 
 bool IsSimple(int);//прототип функции поиска простого числа
 void printArray(int[], int); //прототип функции для вывода массива на печать
 void sortArray (int[],int);//прототип функции сортировки
 
using namespace std;
 
int main()
{
 const int n = 30;
 int A[n];
 
 cout<<"Vash massiv "<<"\n\n";
 srand(time(NULL));//для правильной работы рандома
 
 for (int i=0;i<n;i++)
     A[i]=1+rand()%30;//заполняем случайными числами до 30
     printArray (A,n);
 
 int min=A[0],pos = 0;
 
 for (int i=0;i<n;i++)
       if (( min > A[i])&& (IsSimple(A[i])))
          {
            min = A[i];
            pos = i +1;
          }
      cout <<"  Pos= "<<pos<<"\n";
      sortArray (A,n);
      cout<<"Vash massiv  sorted "<<"\n\n";//вывод массива
      printArray (A,n);
      pos = 0;
 for (int i=0;i<n;i++)
       if (( min > A[i])&& (IsSimple(A[i])))
          {
            min = A[i];
            pos = i +1;
          }
 
      cout <<"  Pos= "<<pos<<"\n";
 
 
return 0;
}
bool IsSimple(int n)//функция поиска простого числа
{
    for (int i = 2; i < n; i++)//четные уже не простые числа
        if ((n % i) == 0)//если делится тоже не простое
            return false;
    return true;//иначе меняем флаг
}
void printArray(int Arr[], int size) //печать массива
{
    for (int i = 0; i < size; i++)
       cout << setw(3) << Arr[i];
       cout <<"\n\n";
}
void sortArray (int Arr[],int size)//функция сортировки
{
    for (int j = 1; j < size; j++)
    for (int k = 0; k < size - 1; k++)
       if (Arr[k] > Arr[k + 1])
          {
            int temp = Arr[k];
            Arr[k] = Arr[k + 1];
            Arr[k + 1] = temp;
          }
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.04.2014, 19:16
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Упорядочить массив целых положительных чисел по возрастанию, определить номер минимального простого числа (C++):

Упорядочить массив целых положительных чисел по возрастанию, определить номер минимального простого числа до и после упорядочивания массива - C++
Упорядочить массив целых положительных чисел по возрастанию, определить номер минимального простого числа до и после упорядочивания...

Упорядочить массив целых положительных чисел по возрастанию, определить но- мер минимального простого числа до и после упорядочивания массива - C++
Упорядочить массив целых положительных чисел по возрастанию, определить но- мер минимального простого числа до и после ...

Дан массив упорядоченных по возрастанию целых чисел. разработать алгоритм бинарного поиска заданного числа, результат номер искомого числа или 0 если - C++
помогите решить задачу: Дан массив упорядоченных по возрастанию целых чисел. разработать алгоритм бинарного поиска заданного числа,...

Определить номер минимального простого числа до и после упорядочивания массива - C++
Упорядочить массив целых положительных чисел по возрастанию, определить номер минимального простого числа до и после упорядочивания...

Номер минимального простого числа в массиве одномерном C++ - C++
Упорядочить массив целых положительных чисел по возрастанию, определить номер минимального простого числа до и после упорядочивания...

В последовательности целых положительных чисел определить максимальное четное число и его порядковый номер. - C++
Вот задача В последовательности целых положительных чисел определить максимальное четное число и его порядковый номер. #include...

1
кверти
4 / 4 / 1
Регистрация: 22.09.2013
Сообщений: 165
Завершенные тесты: 2
09.04.2014, 19:30 #2
Используй пузырьковую сортировку. Ниже она описана функцией .
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
void bubbleSort(int* arr, int size)
{
    int tmp, i, j;
 
    for(i = 0; i < size - 1; ++i) // i - номер прохода
    {            
        for(j = 0; j < size - 1; ++j) // внутренний цикл 
        {     
            if (arr[j + 1] < arr[j]) 
            {
                tmp = arr[j + 1]; 
                arr[j + 1] = arr[j]; 
                arr[j] = tmp;
            }
        }
    }
}
Следовательно после сортировки минимальный будет первый элемент . А чтобы определить где он был до сортировки , то нужно запомнить куда-то его позицию
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.04.2014, 19:30
Привет! Вот еще темы с ответами:

6.62. Дана непустая и упорядоченная по возрастанию последовательность целых чисел, оканчивающаяся числом 10 ООО. Определить порядковый номер первого ч - C++
6.62. Дана непустая и упорядоченная по возрастанию последовательность целых чисел, оканчивающаяся числом 10 000. Определить порядковый...

Упорядочить массив Х(N) по возрастанию, найти сумму положительных элементов массива - C++
Помогите пожалуйста сделать. Упорядочить массив Х(N) по возрастанию, найти сумму положительных элементов массива.

Дана последовательность из n целых чисел. Найти номер минимального элемента в этой последовательности. - C++
Решить указанные в задачи, используя основные операторы языка С++. При решении задачи, использовать все типы циклов (for, while, do while) ...

Упорядочить обменом массив действительных чисел по возрастанию - C++
Упорядочить обменом массив действительных чисел по возрастанию.


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

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

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