OberonCore https://forum.oberoncore.ru/ |
|
Даны 5 строк, каждая строка состоит из 5 цифр https://forum.oberoncore.ru/viewtopic.php?f=35&t=4901 |
Страница 1 из 1 |
Автор: | bill [ Понедельник, 23 Декабрь, 2013 19:31 ] |
Заголовок сообщения: | Даны 5 строк, каждая строка состоит из 5 цифр |
Задача. Даны 5 строк, каждая строка состоит из 5 цифр. Строка 1 состоит из (1 1 1 1 1). Строка 2 из (2 2 2 2 2). Если Строка 1 + Строка 2 = (3 3 3 3 3). Есть еше Строка 3, Строка 4 и Строка 5. Нада разработать алгоритм который суммирует 2 разные строки. Я уже придумал алгоритм но думаю он неудобен если будут даны 100 строк. мой алгоритм: Begin Str_1:='1'; Str_2:='2'; Operaciya:='+'; if Str_1=1 then begin a1:=1; a2:=1; a3:=1; a4:=1; a5:=1; end; if Str_2=2 then begin b1:=2; b2:=2; b3:=2; b4:=2; b5:=2; end; if Operaciya = + then begin b1+a1; b2+a2; b3+a3..... и так далее. Так нада перебрать для каждого случая для 5 строк. Как сделать алгоритм лучше моего? |
Автор: | Иван Денисов [ Понедельник, 23 Декабрь, 2013 20:31 ] |
Заголовок сообщения: | Re: Даны 5 строк, каждая строка состоит из 5 цифр |
Билл, вы не перестаете удивлять новыми интересными задачами. У меня предложение, чтобы обсуждать всё в рамках Компонентного Паскаля, напишите свой алгоритм в виде работающего модуля на нем в среде Блэкбокс. На многие вопросы при этом вы сами ответите, а потом уже обсудим, что надо улучшить. Еще рекомендую вам сразу подумать о том, чтобы, сделать ваш алгоритм масштабируемым, хранить строки в массиве или цепочке, а также обязательно ознакомится с юмористической заметкой про китайский код. |
Автор: | Пётр Кушнир [ Понедельник, 23 Декабрь, 2013 21:07 ] |
Заголовок сообщения: | Re: Даны 5 строк, каждая строка состоит из 5 цифр |
Пример реализации символьных вычислений находится в модуле Integers в BlackBox. Цитата: Модуль Integers реализует абстрактный тип данных Integer для представления целых чисел произвольной точности. Он также содержит наиболее важные арифметические операции для таких чисел и набор операций преобразования. Арифметические операции включают сложение, умножение, возвежение в степень, вычисления частных, разностей и наибольших общих делителей.
|
Автор: | bill [ Суббота, 28 Декабрь, 2013 21:27 ] |
Заголовок сообщения: | Re: Даны 5 строк, каждая строка состоит из 5 цифр |
Иван Денисов, Вот рабочий код моей программы как его улучшить? Я веду обучение, решая математические задачки, задача из алгебры, операции со строками в матрице Код: var
str_1:real; str_2:real; x1,x2,x3,x4,x5:real; y1,y2,y3,y4,y5:real; z1,z2,z3,z4,z5:real; a1b1,a2b1,a3b1,a4b1,a5b1:real; a1b2,a2b2,a3b2,a4b2,a5b2:real; a1b3,a2b3,a3b3,a4b3,a5b3:real; a1b4,a2b4,a3b4,a4b4,a5b4:real; a1b5,a2b5,a3b5,a4b5,a5b5:real; begin str_1:=1; str_2:=2; (*______________________________________________________*) if str_1=1 then begin x1:=a1b1; x2:=a2b1; x3:=a3b1; x4:=a4b1; x5:=a5b1; end; if str_1=2 then begin x1:=a1b2; x2:=a2b2; x3:=a3b2; x4:=a4b2; x5:=a5b2; end; if str_1=3 then begin x1:=a1b3; x2:=a2b3; x3:=a3b3; x4:=a4b3; x5:=a5b3; end; if str_1=4 then begin x1:=a1b4; x2:=a2b4; x3:=a3b4; x4:=a4b4; x5:=a5b4; end; if str_1=5 then begin x1:=a1b5; x2:=a2b5; x3:=a3b5; x4:=a4b5; x5:=a5b5; end; (*______________________________________________________*) if str_2=1 then begin y1:=a1b1; y2:=a2b1; y3:=a3b1; y4:=a4b1; y5:=a5b1; end; if str_1=2 then begin y1:=a1b2; y2:=a2b2; y3:=a3b2; y4:=a4b2; y5:=a5b2; end; if str_1=3 then begin y1:=a1b3; y2:=a2b3; y3:=a3b3; y4:=a4b3; y5:=a5b3; end; if str_1=4 then begin y1:=a1b4; y2:=a2b4; y3:=a3b4; y4:=a4b4; y5:=a5b4; end; if str_1=5 then begin y1:=a1b5; y2:=a2b5; y3:=a3b5; y4:=a4b5; y5:=a5b5; end; (*______________________________________________________*) z1:=x1-y1; z2:=x2-y2; z3:=x3-y3; z4:=x4-y4; z5:=x5-y5; end; |
Автор: | Иван Денисов [ Воскресенье, 29 Декабрь, 2013 16:15 ] |
Заголовок сообщения: | Re: Даны 5 строк, каждая строка состоит из 5 цифр |
Надо заменить твои переменные с цифрами в конце на массивы, а операции над ними сделать в виде циклов. Начнем с этого. Твой алгоритм скорее всего легко описывается в виде двумерного массива и двух вложенных циклов. Очень рекомендую все делать в Блэкбоксе и выкладывать тут рабочий код, иначе твою ветку перенесут в оффтоп. Этот раздел для делающих первые шаги в освоении Компонентного Паскаля, а не просто Паскаля. |
Автор: | Евгений Темиргалеев [ Воскресенье, 29 Декабрь, 2013 17:18 ] |
Заголовок сообщения: | Re: Даны 5 строк, каждая строка состоит из 5 цифр |
Иван Денисов писал(а): Этот раздел для делающих первые шаги в освоении Компонентного Паскаля, а не просто Паскаля. Алгоритмизация к языку не привязана. Не обязательно, что администрация "Образовательного проекта Информатика-21" будет возражать...
|
Страница 1 из 1 | Часовой пояс: UTC + 3 часа |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |