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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 03.06.2009, 17:01   #1
Myau Thai
Пользователь
 
Регистрация: 10.03.2009
Сообщений: 15
По умолчанию C++. нужни коментарии к коду программы

У меня такой вопрос..можете прокоментировать строки этого кода...чтобы полностью вникнуть в процесс программы

Код:
#include "stdafx.h"
#include <iostream>
#include <iomanip>
#include <ctime>
using namespace std;

void Erase(char*, int&, char);
void Erase (double*, int&, double);


int main()
{
	int v;
	const int n = 5;
	int size_a = 0;
	int size_s = 0;
	char *big_string = new char[size_s];
	double *my_array = new double[size_a];
	double my_element;
	char my_word;
	char c;



	char const* pmenu[n] = {
		"1.Razmer i Inicializacija massiva",
		"2.Vvodim Slova",
		"3.Ydalenie SLOV",
		"4.Ydalenie 4ISEL",
		"0. VIXOD"};

		do
		{
			cout << endl;
			for (int i=0; i<n; i++)
				cout << pmenu [i] << endl;
			cout << "\nYour choice: ";
			cin >> v ;
			cin.get();
			if (cin.fail())
			{
				cin.clear();
				while (cin.get()!='\n');
				v = -1;
			}

			switch (v)
			{
			case 1:
				cout << "\nRazmer massiva: ";
				cin >> size_a;
				cin.get();
				if (cin.fail())
				{
					cin.clear();
					while (cin.get()!='\n');
					break;
				};

				srand((unsigned int)(time(NULL)));
				delete [] my_array;

				cout << "Polu4ennij massiv:\n";
				my_array = new double[size_a];
				for(int i=0; i<size_a; i++)
				{
					my_array[i] = int(rand()/32767.*15);
					cout << setw(5) << right << my_array[i];
				};
				break;

			case 2:

				cout << "\nRazmer Stroki: \n";
				cin >> size_s;
				while (cin.get()!='\n');


				if (cin.fail())
				{
					cin.clear();
					break;
				};
				size_s++;

				delete [] big_string;
				big_string = new char[size_s];
				cout << "\nVvodim stroku: \n";

				cin.get(big_string,size_s,'\n');
				size_s = strlen(big_string);

				while (cin.get()!='\n');
				break;


			case 3: 

				cout<<"Vvodim Element: \n";
				cin>>my_word;
				Erase(big_string, size_s,my_word);

				for(int i=0; i<size_s; i++)
				{
					cout << setw(1) << right << big_string[i];
				};

				break;
				delete [] big_string;

			case 4: 

				cout<<"Vvodim element: ";
				cin>>my_element;
				Erase(my_array, size_a,my_element);

				for(int i=0; i<size_a; i++)
				{
					cout << setw(5) << right << my_array[i];
				};
				break;
				delete [] my_array;

			case 0:
				delete [] big_string;
				delete [] my_array;
				break;

			default :
				cout << "\nTakova Elementa nesu6estvuet v Massive!\n";
			}
		} while (v!=0);
		return 0;
}



void Erase(char* s, int& size, char my_word)
{
	for(int i = 0; i<size; i++)
	{
		if(s[i]== my_word)
		{

			for(int j = i+1; j<=size; j++)
			{
				s[j-1] = s[j];
			}

			size--;
			i--;
		}
	}
}



void Erase(double* arr, int& size, double my_element)

{

	for(int i = 0; i<size; i++)
	{
		if(arr[i]== my_element)
		{

			for(int j = i+1; j<=size; j++)
			{
				arr[j-1] = arr[j];
			}

			size--;
			i--;
		}
	}
}
Myau Thai вне форума Ответить с цитированием
Старый 04.06.2009, 19:32   #2
Myau Thai
Пользователь
 
Регистрация: 10.03.2009
Сообщений: 15
По умолчанию

Можете приписать коментарии к Case 1-4 и к 2-м Функциям.
Заранее благодарен
Myau Thai вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
многострочные коментарии Vano-sie72 Win Api 2 31.05.2009 21:18
Нужны коментарии к задаче seme4ki Помощь студентам 1 23.12.2008 18:30
Удалить коментарии Snake08 Паскаль, Turbo Pascal, PascalABC.NET 1 27.11.2008 01:41
Коментарии к проге на С для мк Raptor Помощь студентам 2 12.11.2008 00:41