Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.11.2007, 14:43   #1
bel_ka
 
Регистрация: 29.11.2007
Сообщений: 5
Восклицание Помогите с задачей

Помогите пожалуйста вот с такой задачей : В массиве из 12 вещественных чисел найти наименший элемент и поменять его местами с первым элементом и найти наибольший элемент и поменять его с последним элементом.
bel_ka вне форума Ответить с цитированием
Старый 29.11.2007, 17:43   #2
Kocapb
Пользователь
 
Регистрация: 28.10.2007
Сообщений: 61
По умолчанию

Цитата:
Сообщение от bel_ka Посмотреть сообщение
Помогите пожалуйста вот с такой задачей : В массиве из 12 вещественных чисел найти наименший элемент и поменять его местами с первым элементом и найти наибольший элемент и поменять его с последним элементом.
методом пузырька находи макс и мин и потом присваивай 1му - мин, последнему макс. или тебе код вывесить за спасибо? =)
Kocapb вне форума Ответить с цитированием
Старый 30.11.2007, 00:29   #3
ACE Valery
Сама себе режиссер
Старожил
 
Аватар для ACE Valery
 
Регистрация: 27.04.2007
Сообщений: 3,378
По умолчанию

Цитата:
Сообщение от Kocapb Посмотреть сообщение
методом пузырька находи макс и мин
Методом пузырька??? А мне за спасибо можете показать это чудо? Действительно, ОЧЕНЬ интересно...

bel_ka, для вас:
Код:

#include<iostream>
#include<windows.h>

using namespace std;

void main()
{
  SetConsoleCP(1251);
  SetConsoleOutputCP(1251);
  double mas[12];
  cout<<"Введите элементы массива ";
  for(int i=0;i<n;i++)
  {
	  cin>>mas[i];
  }
  //поиск максимального элемента
  int max_el=mas[0];
  int max_num=0;
  for(int i=0;i<n;i++)
  {
	  if(mas[i]>max_el)
	  {
		  max_el=mas[i];
		  max_num=i;
	  }
  }
  //поиск минимального элемента
  int min_el=mas[0];
  int min_num=0;
  for(int i=0;i<n;i++)
  {
	  if(mas[i]<min_el)
	  {
		  min_el=mas[i];
		  min_num=i;
	  }
  }
  //обмен местами
  int temp_el=mas[0];
  mas[0]=mas[min_num];
  mas[min_num]=temp_el
  temp_el=mas[11];
  mas[11]=mas[max_num];
  mas[max_num]=temp_el;

  cout<<"Массив с измененными местами мин и макс элементов "<<endl;
  for(int i=0;i<n;i++)
  {
	  cout<<mas[i]<<" ";
  }
  cout<<endl;
}
Код не проверяла, но должен работать без ошибок.
Если я вас напрягаю или раздражаю, вы всегда можете забиться в угол и поплакать
ACE Valery вне форума Ответить с цитированием
Старый 30.11.2007, 04:08   #4
PuzzleC
Пользователь
 
Регистрация: 01.11.2007
Сообщений: 33
По умолчанию

TO ACE Valery, в приведенном тобой примере используется как-раз метод пузырька
Код:
      if(mas[i]>max_el)  
      {  
          max_el=mas[i];  
          max_num=i;  
      }
PuzzleC вне форума Ответить с цитированием
Старый 30.11.2007, 05:46   #5
Kocapb
Пользователь
 
Регистрация: 28.10.2007
Сообщений: 61
По умолчанию

Цитата:
Сообщение от PuzzleC Посмотреть сообщение
TO ACE Valery, в приведенном тобой примере используется как-раз метод пузырька
Код:
      if(mas[i]>max_el)  
      {  
          max_el=mas[i];  
          max_num=i;  
      }
во во =))) просто не знал что юзал
Kocapb вне форума Ответить с цитированием
Старый 30.11.2007, 07:07   #6
merax
Форумчанин
 
Регистрация: 27.12.2006
Сообщений: 955
По умолчанию

ACE Valery +++1
merax вне форума Ответить с цитированием
Старый 30.11.2007, 21:15   #7
bel_ka
 
Регистрация: 29.11.2007
Сообщений: 5
По умолчанию

Цитата:
Сообщение от ACE Valery Посмотреть сообщение
Методом пузырька??? А мне за спасибо можете показать это чудо? Действительно, ОЧЕНЬ интересно...

bel_ka, для вас:
Код:

#include<iostream>
#include<windows.h>

using namespace std;

void main()
{
  SetConsoleCP(1251);
  SetConsoleOutputCP(1251);
  double mas[12];
  cout<<"Введите элементы массива ";
  for(int i=0;i<n;i++)
  {
	  cin>>mas[i];
  }
  //поиск максимального элемента
  int max_el=mas[0];
  int max_num=0;
  for(int i=0;i<n;i++)
  {
	  if(mas[i]>max_el)
	  {
		  max_el=mas[i];
		  max_num=i;
	  }
  }
  //поиск минимального элемента
  int min_el=mas[0];
  int min_num=0;
  for(int i=0;i<n;i++)
  {
	  if(mas[i]<min_el)
	  {
		  min_el=mas[i];
		  min_num=i;
	  }
  }
  //обмен местами
  int temp_el=mas[0];
  mas[0]=mas[min_num];
  mas[min_num]=temp_el
  temp_el=mas[11];
  mas[11]=mas[max_num];
  mas[max_num]=temp_el;

  cout<<"Массив с измененными местами мин и макс элементов "<<endl;
  for(int i=0;i<n;i++)
  {
	  cout<<mas[i]<<" ";
  }
  cout<<endl;
}
Код не проверяла, но должен работать без ошибок.
Супер!!! все работает ACE Valery большее спасибо
bel_ka вне форума Ответить с цитированием
Старый 01.12.2007, 17:59   #8
ACE Valery
Сама себе режиссер
Старожил
 
Аватар для ACE Valery
 
Регистрация: 27.04.2007
Сообщений: 3,378
По умолчанию

TO bel_ka: не за что. Всегда рада помочь
TO Kocapb, PuzzleC: ребята, вот это нахождение максимального и минимального элементов методом пузырька:

Код:
#include<iostream>  
 #include<windows.h>  
   
 using namespace std;  
   
 void main()  
 { 
   SetConsoleCP(1251); 
   SetConsoleOutputCP(1251); 
   const int n=12;
   double mas[n]; 
   double temp;
   cout<<"Введите элементы массива "; 
   for(int i=0;i<n;i++) 
   { 
       cin>>mas[i]; 
   }  
   //поиск максимального элемента  
 
   for(int i=0;i<n-1;i++)  
   { 
       if(mas[i]>mas[i+1]) 
       { 
           temp=mas[i];
           mas[i]=mas[i+1]; 
           mas[i+1]=temp; 
       }  
   }  
   //поиск минимального элемента  

   for(int i=n-1;i>0;i--)  
   { 
       if(mas[i]<mas[i-1]) 
       { 
           temp=mas[i];
           mas[i]=mas[i-1]; 
           mas[i-1]=temp; 
       }  
   }  
   cout<<"Массив с измененными местами мин и макс элементов "<<endl;  
   for(int i=0;i<n;i++)  
   { 
       cout<<mas[i]<<" "; 
   }  
   cout<<endl;  
 }
А то, что я писала раньше - это далеко не метод пузырька.
Если я вас напрягаю или раздражаю, вы всегда можете забиться в угол и поплакать
ACE Valery вне форума Ответить с цитированием
Старый 26.12.2007, 18:04   #9
Sargon
Пользователь
 
Аватар для Sargon
 
Регистрация: 12.09.2007
Сообщений: 34
По умолчанию

Как этот код в турбо си перевести? чтобы он работал
Sargon вне форума Ответить с цитированием
Старый 26.12.2007, 18:45   #10
Alek86
Форумчанин
 
Регистрация: 25.09.2007
Сообщений: 189
По умолчанию

ручками
__________________
Alek86 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите с задачей. terminadoor Помощь студентам 4 22.07.2008 18:38
Помогите с задачей drossel Общие вопросы C/C++ 9 01.06.2008 21:45
Помогите с задачей.. vit_al Паскаль, Turbo Pascal, PascalABC.NET 3 24.04.2008 13:48
Помогите с задачей в С++ vovchara Помощь студентам 2 22.04.2008 22:49
Помогите с задачей Лёха Паскаль, Turbo Pascal, PascalABC.NET 7 08.02.2008 20:08