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

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

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

Объясните пожалуйста как работает программа!! - C++

23.01.2011, 18:08. Просмотров 459. Ответов 1
Метки нет (Все метки)

#include<iostream>
#include<cstdlib>
using namespace std;

int *Create(int n)
{
if(n<=10000)
{
int *arr;
arr = new int[n];
for(int i=0; i<n; i++)
arr[i]=rand()%100;
return arr;
}
return NULL;
}
void copy(int *arr1, int *arr2, int n)
{
for(int i=0; i<n; i++)
arr2[i]=arr1[i];
}
void Show(int *arr, int n)
{
for(int i=0; i<n; i++)
cout<<arr[i]<<" "<<endl;
}
void selectionSort(int *arr, int n)
{
int moves=0,srav=0;
int indexmin=0;
for(int i=0; i<n; i++)
{
indexmin=i;
for(int j=indexmin+1; j<n; j++, srav++)
if(arr[j]<arr[indexmin])
indexmin=j;
if(indexmin!=i)
{
int tmp=arr[indexmin];
arr[indexmin]=arr[i];
arr[i]=tmp;
moves++;
}
}
Show(arr,n);
cout<<endl<<"Kolichestvo sravneniy="<<srav<<endl;
cout<<"Kolichestvo perestanovok="<<moves<<endl;
}
int main()
{
setlocale(LC_ALL,"Russian");
int *unsort=NULL;
int *sort=NULL;
int n;
char action;
do
{
cout<<endl<<"1. Sozdat massiv chisel"<<endl<<"2.Pokazat neotsortirovanyy massiv"<<endl<<"3.Sortirovka metodom vybora"<<endl<<"0. Vyhod"<<endl<<"=";
cin>>action;
switch(action)
{
case 1:
if(unsort!=NULL)
{
delete[] unsort;
delete[] sort;
}
cout<<endl<<"Razmer massiva=";
cin>>n;
unsort=Create(n);
if(unsort!=NULL)
{
sort= new int[n];
cout<<endl<< "Massiv elementov sozdan"<<endl;
}
else
cout<<"NEVOZMOZHNO SOZDAT MASSIV"<<endl;
break;
case 2:
cout<<endl<<"neobhodimo sozdat massiv"<<endl;
break;
case 3:
if(unsort!=NULL)
{
copy(unsort,sort,n);
selectionSort(sort,n);
}
else
cout<<endl<<"sperva sozdaite massiv"<<endl;
break;
case 0:
delete[] unsort;
delete[] sort;
break;
default:
cout<<endl<<"Oshibka"<<endl;
break;
}
}while(action!=3);
cin.get();
}

Добавлено через 1 минуту
сортировка массивов методом выбора, напишите пожалуйста комменты чё делает каждая строка пожалуйста.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.01.2011, 18:08
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Объясните пожалуйста как работает программа!! (C++):

Объясните пожалуйста как работает программа - C++
объясните пожалуйста код с момента появления &quot;bool fl&quot;, как это вообще работает? #include &lt;iostream&gt; #include &lt;stdlib.h&gt; #include...

Объясните пожалуйста, как работает код. Указатели - C++
Если не сложно, напишите пожалуйста комметнтарии к каждой строке. Никак не могу разобраться. Программа разделяет строку на слова. ...

Объясните пожалуйста, как конкретно работает код - C++
Программа считывает из файла фамилии, имена, годы рождения и балы студентов, и записывает в другой файл фамилии, начинающейся с букв А и Б...

Объясните пожалуйста как работает эта сортировка - C++
Я не совсем понимаю что происходит с вектором #include &lt;stdio.h&gt; #include &lt;iostream&gt; #include &lt;string&gt; #include &lt;vector&gt; ...

Объясните, пожалуйста, как работает передача переменных при вызове функций? - C++
#include &lt;iostream&gt; #include &lt;conio.h&gt; using namespace std; void z(int *a,int lenght){ int *p; for...

Объясните, как работает программа - C++
объясните как работает программа #include &lt;iostream&gt; #include &lt;conio.h&gt; using namespace std; bool Р(int n) { for (int i =...

1
no0ker
23.01.2011, 18:39     Объясните пожалуйста как работает программа!!
  #2

Не по теме:

не могли бы вы оформлять код в теги [С], что бы было легче читать.

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.01.2011, 18:39
Привет! Вот еще темы с ответами:

Объясните как работает программа - C++
Задание звучит так: &quot;Разработать функцию, в которую передаются в качестве аргументов массив типа float и его размер. Функция должна...

Объясните, как работает программа - C++
программа по трем введеным числам определяет и выводит на экран число имеющее в составе наибольше едениц. Пожалуйста, объясните подробно...

объясните как работает программа - C++
A в степени K, как работает эта программа, за что отвечают m и s ? #include &quot;stdafx.h&quot; #include &quot;iostream&quot; using namespace std; ...

Объясните как работает программа - C++
Цель задачи была: Возведение X в 59 степень за самое малое количество шагов. 1. Ввод (X); 2. X2 = X*X; 3. X4 = X2*X2; ...


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

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

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