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

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

Восстановить пароль Регистрация
Другие темы раздела
C++ Выполнить определение цвета пикселя при вождении мышкой по компоненту TImage http://www.cyberforum.ru/cpp-beginners/thread233044.html
В программе мне необходимо выполнять определение цвета пикселя при вождении мышкой по компоненту TImage. Подскажите пожалуйста как можно это организовать. P.S. сам найти свойств цвета пикселя не смог.
C++ структура о студенте Описать структуру заданной информации о студенте : фамилия, номер группы, факультет, год поступления, год рождения. Оценить и инициализировать подходящие значения массив 3 таких структур. Вывести значения на экран всех полей структур, которые являются элементом массива с индексом 2. очень сильно надо)пожалуйста, подскажите, как вывести именно для элемента с индексом 2. http://www.cyberforum.ru/cpp-beginners/thread233033.html
Заменить в строке все прописные буквы символом * C++
Создайте символьный массив, инициализированный строкой символов. затем замените в строке все прописные буквы a,b,c,..,z символом * и выведите эту строку на экран ну очень надо, плиз)
C++ Найти сумму в главной диагонали в двумерном массиве
Найти сумму в главной диагонали в двумерном массиве. Пожалуйста, помогите мне)
C++ For http://www.cyberforum.ru/cpp-beginners/thread233020.html
как с помощью цикла фор перебрать символы в строке до пробела? например: выаорывфоплофыврпа впыалоывфап аыфволпало
C++ Программирование циклических алгоритмов Вывести на экран таблицу значений функции Y(x) и ее разложенияв ряд S(x) для x, изменяющегося от а до b с шагом h=(b-a)/10. подробнее

Показать сообщение отдельно
Salawat
 Аватар для Salawat
0 / 0 / 0
Регистрация: 01.12.2010
Сообщений: 28
23.01.2011, 18:08     Объясните пожалуйста как работает программа!!
#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 минуту
сортировка массивов методом выбора, напишите пожалуйста комменты чё делает каждая строка пожалуйста.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 15:02. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru