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

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

Войти
Регистрация
Восстановить пароль
 
6O6OTiK
0 / 0 / 0
Регистрация: 21.05.2012
Сообщений: 10
#1

Простые числа исходного одномерного массива - C++

04.07.2012, 13:25. Просмотров 442. Ответов 4
Метки нет (Все метки)

Поменять местами максимальный и минимальный элементы среди простых чисел исходного одномерного массива. Результат вывести.
помогите написать прогу...

Добавлено через 22 минуты
Цитата Сообщение от 6O6OTiK Посмотреть сообщение
Поменять местами максимальный и минимальный элементы среди простых чисел исходного одномерного массива. Результат вывести.
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
#include <iostream>
using namespace std;
#include <conio.h>
#include <stdlib.h>
#include <ctime.h>
using std::time;
const int size = 100;
      int array[size] = {0};
      int IndexMin = 0, // index minimal'nogo
          IndexMax = 0, // index maksimal'nogo
          Min = 0;
          Max = 0;
          temp; // Dl9 perestanovki
  // Randomna9 inicializacia massiva
 
  //poisk min max cikl
  Max = Min = array[0];
  for(int i = 0; i < size; i++){
    if(array[i] < Min){
      Min = array[i];
      IndexMin = i;
     }
    if(array[i] > Max){
      Max = array[i];
      IndexMax = i;
     }
   }
  }
  //obrashenie k etim elementam
   // perestanovka
  temp = array[IndexMin];
  array[IndexMin] = array[IndexMax];
  array[IndexMax] = temp;
  //vivod
   cout<<"\nMax = "<<array[IndexMax]<<"\n"<<"Min = "<<array[IndexMin]<<endl;
подскажите где ошибка?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.07.2012, 13:25     Простые числа исходного одномерного массива
Посмотрите здесь:
C++ Вывести простые числа одномерного массива
C++ Сформировать матрицу из исходного одномерного массива согласно условию
Формирование двух других массивов из одного исходного одномерного массива C++
C++ Скопировать элементы исходного массива в два других массива, размером вдвое меньше исходного
Сформировать из исходного массива новый, разместив в нем элементы исходного массива, отсортированные по три C++
C++ Вывести простые числа из массива
Удалить простые числа из массива C++
C++ Удалить из массива все простые числа
C++ Вывод массива в обратном порядке, простые числа
Вывести на экран только простые числа из массива C++
Определить, есть ли среди элементов массива простые числа... C++
C++ Вывести все простые числа из заданного пользователем массива

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MrCold
854 / 752 / 71
Регистрация: 11.01.2012
Сообщений: 1,942
04.07.2012, 14:22     Простые числа исходного одномерного массива #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <algorithm>
using namespace std;
 
int main()
 
{
  int array[ ] = { 2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37 };
 
  size_t arr_size = sizeof ( array ) / sizeof( array[ 0 ] );
 
   swap  ( *max_element (array, array + arr_size ), *min_element ( array, array + arr_size) );
 
   for ( int i = 0; i < arr_size; i++ )
  { 
       cout << array[ i ] ;
       cout.put ( ' ' );
   }
return ( 0 );
}
neske
1479 / 846 / 75
Регистрация: 26.03.2010
Сообщений: 2,902
04.07.2012, 14:29     Простые числа исходного одномерного массива #3
MrCold, забивать в массив простые числа - не есть решение задачи
MrCold
854 / 752 / 71
Регистрация: 11.01.2012
Сообщений: 1,942
04.07.2012, 14:31     Простые числа исходного одномерного массива #4
neske,

Не по теме:

да я знаю

ForEveR
В астрале
Эксперт С++
7970 / 4732 / 320
Регистрация: 24.06.2010
Сообщений: 10,541
Завершенные тесты: 3
04.07.2012, 15:08     Простые числа исходного одномерного массива #5
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
#include <iostream>
#include <vector>
#include <iterator>
#include <algorithm>
 
bool is_simple(int value)
{
   for (int i = 2; i < value / 2; ++i)
   {
      if (!(value % i))
      {
         return false;
      }
   }
   return true;
}
 
int main()
{
   std::vector<int> vec = {1,3,4,5,6,7,8,9,10};
   auto cmp = [](const int f, const int s) { return is_simple(f) && is_simple(s) && f < s; };
   std::vector<int>::iterator min = std::min_element(vec.begin(), vec.end(), cmp);
   std::vector<int>::iterator max = std::max_element(vec.begin(), vec.end(), cmp);
   std::iter_swap(min, max);
   std::copy(vec.begin(), vec.end(), std::ostream_iterator<int>(std::cout, "\n"));
}
http://liveworkspace.org/code/7f8f8e...d246248b36525b
Yandex
Объявления
04.07.2012, 15:08     Простые числа исходного одномерного массива
Ответ Создать тему
Опции темы

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