Загрузка данных



функция факториал(Число)
	кайф = 1;
	для ИИ = 1 по Число цикл
		кайф = кайф * ИИ;
		
	конеццикла;
	возврат кайф; 
конецфункции

функция модуль(Число)
	кайф = pow(pow(Число, 2), 1/2);
	возврат кайф; 
конецфункции

функция корень(Число)
	кайф = pow(Число, 1/2);
	возврат кайф; 
конецфункции

функция степень(Число1, Число2)
	кайф = pow(Число1, Число2);
	возврат кайф; 
конецфункции

функция Ф(Число1, Число2, Число3)
	если (Число2 - Число3) < 0 тогда
		Сообщить("Ошибка, под корнем отрицательное выражение b-c");
		возврат("Ошибка");
	иначеесли (Число1 + Число3 * (Число1 - корень(модуль(Число2 - Число3)))) = 0 тогда
		Сообщить("Ошибка, деление на 0");
		возврат("Ошибка");		
	иначе
		кайф = (корень(модуль(Число1 - Число3)) + Число2 * корень(Число2 - Число3)) / (Число1 + Число3 * (Число1 - корень(модуль(Число2 - Число3))));
		возврат кайф;
	конецесли; 
конецфункции

функция ФИОПРО(Строка)
	построкам = стрзаменить(Строка, " ", символы.ПС);
	
	ИМЯ = стрполучитьстроку(построкам, 2);
	ФАМИЛИЯ = стрполучитьстроку(построкам, 1);
	ОТЧЕСТВО = стрполучитьстроку(построкам, 3);
	
	ответ = ИМЯ + символы.ПС + ФАМИЛИЯ + " " + ИМЯ + символы.ПС + ФАМИЛИЯ + " " + ИМЯ + " " + ОТЧЕСТВО + символы.ПС + ФАМИЛИЯ + " " + ИМЯ + символы.ПС + ИМЯ;
	возврат ответ;
конецфункции

функция ёлка(число)
	число = стрзаменить(строка(число), символы.НПП, "");
	ответ = "00000000000000" + число + символы.ПС + "  0000000000000" + число + символы.ПС + "    000000000000" + число + символы.ПС + "  0000000000000" + число + символы.ПС + "00000000000000" + число;
	возврат ответ;
конецфункции

функция датики(дата)
	дата1 = дата + (24*60*60) * 3;
	дата2 = дата + (24*60*60) * 5;
	дата3 = дата - (24*60*60) * 3;
	дата4 = дата - (24*60*60) * 5;
	ответ = формат(дата4, "ДФ=""дд.ММ.гггг""") + символы.ПС + формат(дата3, "ДФ=""дд.ММ.гггг""") + символы.ПС + формат(дата, "ДФ=""дд.ММ.гггг""") + символы.ПС + формат(дата1, "ДФ=""дд.ММ.гггг""") + символы.ПС + формат(дата2, "ДФ=""дд.ММ.гггг"""); 
    возврат ответ;
конецфункции

функция ФФ(Число1, Число2, Число3)
	кайф = 0;
	для ии = 1 по Число3 цикл
		кайф = кайф + pow(Число1 + Число2, ии);  
	конеццикла;
	возврат кайф;     
конецфункции

функция TT(Число1, Число2, Число3)
	кайф = 0;
	для ии = 2 по Число3 + 1 цикл
		кайф = кайф + (pow(Число1, ии) - pow(Число2, ии - 1));  
	конеццикла;
	возврат кайф;	
конецфункции            

функция CC(Число1, Число2)
	ответ = Число1 + Число2;
	возврат ответ; 
конецфункции

функция ДобавитьКоличествоРабочихЧасов(ДатаНачала, КоличествоЧасов)
	дни = цел(((час(ДатаНачала) * 60 * 60 + минута(ДатаНачала) * 60 + секунда(ДатаНачала)) + (КоличествоЧасов * 60 * 60)) / (9 * 60 * 60));
	остаток = (((час(ДатаНачала) + минута(ДатаНачала) / 60  + секунда(ДатаНачала) / 60 / 60) + КоличествоЧасов + 1) % (9));
	результат = (ДатаНачала + ((дни - 1) * 24 * 60 * 60) + (8 + остаток) * 60 * 60) - (час(ДатаНачала) * 60 * 60 + минута(ДатаНачала) * 60 + секунда(ДатаНачала));
	возврат результат;
конецфункции

&НаКлиенте
Процедура Команда1(Команда)
	ОчиститьСообщения();
	
	сообщить("Ваш ответ: " + ((факториал(5) + факториал(2)) / факториал(3)) * sqrt(факториал(7)));
КонецПроцедуры

&НаКлиенте
Процедура Команда2(Команда)
	перем а, б, с;
	
	ОчиститьСообщения();
	
	ввестичисло(а, "Введите число для a");
	ввестичисло(б, "Введите число для b");
	ввестичисло(с, "Введите число для c");
	
	ответ = Ф(а, б*12, с/4) + Ф(а/2, с*5, 0);
	
	сообщить(ответ);
КонецПроцедуры

&НаКлиенте
Процедура Команда3(Команда)
	перем а, б, с, н;
	
	ОчиститьСообщения();
	
	ввестичисло(а, "Введите число для a");
	ввестичисло(б, "Введите число для b");
	ввестичисло(с, "Введите число для c");
	ввестичисло(н, "Введите число для n");
	
	ответ = (CC(ФФ(а, б, н), TT(а, с, н)/2) - CC(ФФ(а, б, н), TT(а, с, н)*5)) * CC(ФФ(а, б, н)/5, TT(а, с, н)+3);
	
	сообщить("Ваш ответ при a=" + а + " b=" + б + " c=" + с + " и n=" + н + ": " + ответ);
КонецПроцедуры

&НаКлиенте
Процедура Команда4(Команда)
    перем число;
	
	ОчиститьСообщения();
	
	ввестичисло(число, "Введите число");
	
	сообщить(ёлка(число));
КонецПроцедуры

&НаКлиенте
Процедура Команда5(Команда)
	перем ФИО;
	
	ОчиститьСообщения();
	
	ввестистроку(ФИО, "Введите ваше ФИО через пробел");
	
	сообщить(ФИОПРО(ФИО));
КонецПроцедуры

&НаКлиенте
Процедура Команда6(Команда)
	// Вставить содержимое обработчика.
КонецПроцедуры

&НаКлиенте
Процедура Команда7(Команда)
	перем дата, часы;
	
	ОчиститьСообщения();
	
	ввестидату(дата, "Введите дату начала", частидаты.ДатаВремя);
	если формат(дата, "ДФ = ""ддд""") = "сб" или формат(дата, "ДФ = ""ддд""") = "вс" тогда
		сообщить("Ошибка, ваша дата не в рабочий день");
	иначеесли час(дата) < 8 или час(дата) > 17 тогда
		сообщить("Ошибка, ваше время не в рабочее время");
	иначе
		ввестичисло(часы, "Введите количество рабочих часов");
		если часы < 0 тогда
			сообщить("Ошибка, часы не должны быть отрицательные");
		иначе
			результат = ДобавитьКоличествоРабочихЧасов(дата,часы); 
			СООБЩИТЬ("Конец работы произойдёт в: "+ результат);
		конецесли;
	конецесли;  
КонецПроцедуры

&НаКлиенте
Процедура Команда8(Команда)
	перем дата;
	
	ОчиститьСообщения();
	
	ввестидату(дата, "Введите вашу дату", частидаты.Дата);
	
	сообщить(датики(дата));
КонецПроцедуры