 |
Вітаю Вас, Гість · RSS |
 |
Задачі по Pascal
| |
skif |
Дата: Пн, 12.07.2010, 19:24 | Повідомлення № 1 |
Прописаний назавжди
Повідомлень: 449
| Не знайшов більш відповідної теми, тому вирішив створити нову, якщо вже десь є, прошу вибачення у модераторів Отже, задача на масиви з посібника Я. Глинського (Turbo Pascal&Delphi 2004 р), не складна, але я щось загруз :( "Утворити і вивести масив у з елементами у(к), к=1,12. Перший додатний елемент поміняти місцями з максимальним".
[admin]Шановні форумчани!!!!! Повідомлення, які не відповідають темі або несуть некорисний зміст будуть видалятись без попередження!!!
program Masuvu; uses crt; var y,g:array [1..12] of real; max,h:real; k,n,m:integer; begin clrscr; max:=-1000000; n:=0; for k:=1 to 12 do begin y[k]:=sin(k*k)*cos(k*k*k)-sin(k)+5.2; if y[k]>max then begin max:=y[k]; m:=k; end; if y[k]>0 then begin n:=n+1; g[n]:=y[k]; h:=g[1]; end; if y[k]=g[1] then begin y[k]:=max; y[m]:=h; end; writeln (k,' element ',y[k]:5:2); end; if n>0 then writeln ('pershuj dodatnij element',g[1]:5:2)else writeln('nema dodatnih elementiv'); writeln ('maksumalnuj element - ', m,' -',max:5:2); readln; end. end.
Відредаговано: W-w-W - Пт, 08.01.2016, 19:00 |
|
| |
Andrey123q |
Дата: Пн, 09.05.2011, 21:28 | Повідомлення № 16 |
Досвідчений учасник
Повідомлень: 1236
| 1) определяем функцию fx 2) запускаем цикл от 1 до 12 - текущее значение хранится в переменной $_ (можно было бы явно указать после foreach) 3) в цикле заполняем хеш значениями (1=>f(1), 2=>f(2), ...) 4) определяем максимум и 1е положительно число 5) выводим на печать массив 6) если определено положительное значение заносим в хеш для ключей max1, dod1 (из диапазона 1..12) соответствующие значения f(x) 7) выводим на печать Согласитесь на Perl задачка вышла компактней. Интересный язык.
Відредаговано: Andrey123q - Пн, 09.05.2011, 21:34 |
|
| |
Пилипчук_О_П |
Дата: Пн, 09.05.2011, 23:05 | Повідомлення № 17 |
Ветеран спілкування
Повідомлень: 4332
| Quote (Bandalak) Які саме? Ніби все зрозуміло! Ну-ну! Я в Perl темний, як підвал Тобто, знаю, що є така мова і все. Чим треба зайнятися, щоб довелося її вивчити? Quote (Andrey123q) Согласитесь на Perl задачка вышла компактней. Интересный язык. Дякую за коментар, але... Логіка й так проглядається, якщо вчитатись. В дрібницях непосвяченому (є тільки досвід асемблера 8080, Бейсік, Паскаль, Делфі, С++, С#, трохи Пітон, може щось пропустив ) важко орієнтуватись: ($q)=@_; $y=&fx($_); тощо. Я розумію, що ліки від цього - книжку почитати, але спитав про всяк випадок.
Відредаговано: Пилипчук_О_П - Вт, 10.05.2011, 01:27 |
|
| |
Andrey123q |
Дата: Пн, 09.05.2011, 23:39 | Повідомлення № 18 |
Досвідчений учасник
Повідомлень: 1236
| Quote (Пилипчук_О_П) Чим треба зайнятися, щоб довелося її вивчити? Например, скрипты в Unix'ax, web-интерфейсы, например, к базам данных. Quote (Пилипчук_О_П) ($q)=@_; $y=&fx($_) sub fx - определяем функцию которой передается список значений. В Perl как и в других языках используются разименовывающие символы: $ - указывает на переменную, @ - массив, % - хеш, & - функцию и т.д. При переборе циклов можно явно указывать переменную например: foreach $i (1..12) {"print $i"} а можно и не указывать, тогда используется системная переменная $_ - в скалярном контексте, @_ - списочном. Тогда цикл можно переписать так: foreach (1..12) {print "$_ \n"} или так: print "$_ \n" foreach (1..12) В определении функции используется одна переменная, т.е. входной массив содержит один элемент - вот мы его и передаем в список из одной переменной. ($q)=@_ можно было бы переписать $q=@_[0] - в первом варианте списочные контексты, во втором скалярные. В двух предложениях я конечно не объясню основы языка
Відредаговано: Andrey123q - Пн, 09.05.2011, 23:44 |
|
| |
Bandalak |
Дата: Вт, 10.05.2011, 11:41 | Повідомлення № 19 |
Лідер форуму
Повідомлень: 6403
| Quote (Пилипчук_О_П) Я в Perl темний, як підвал Я думав, що Ви про Паскаль? В Перлі я теж темний, як антрацит!
|
|
| |
passaj |
Дата: Ср, 22.02.2012, 01:26 | Повідомлення № 20 |
Новий користувач
Повідомлень: 1
| Це для уроків, чи просто між собою випендрюєтеся на звання " Я такий розумний - що аж самому страшно!" ?
|
|
| |
volevikt |
Дата: Ср, 22.02.2012, 01:36 | Повідомлення № 21 |
Перспективна вчителька
Повідомлень: 1912
| Форум дає можливість висловитися всім учасникам. Можливо, в даній гілці трішки відхилилися від теми. passaj, пропонуйте свої задачі.
|
|
| |
Jaxx |
Дата: Пт, 24.02.2012, 09:26 | Повідомлення № 22 |
Я тут недавно...
Повідомлень: 47
| Хтось з викладачів, хоча б на гуртках з програмування, звертає увагу учнів на стандарти оформлення коду і правила іменування змінних і функцій?
|
|
| |
mul44 |
Дата: Пт, 24.02.2012, 13:04 | Повідомлення № 23 |
Досвідчений учасник
Повідомлень: 1137
| Звертаю, алк як то кажуть "голий вася на матрасі". Пройшли і забули, як страшний сон.
|
|
| |
Jaxx |
Дата: Пт, 24.02.2012, 13:11 | Повідомлення № 24 |
Я тут недавно...
Повідомлень: 47
| Quote (mul44) Звертаю, алк як то кажуть "голий вася на матрасі". Пройшли і забули, як страшний сон. Ясно, а якщо потім почнуть програмуванням займатися доведеться самостійно доходити перевчатися. Я знаю навіть випадки коли оцінки знижували за довгі назви змінних.
|
|
| |
Пилипчук_О_П |
Дата: Пт, 24.02.2012, 14:43 | Повідомлення № 25 |
Ветеран спілкування
Повідомлень: 4332
| Щоб зрозуміти важливість оформлення коду, коментування та домовленостей щодо імен змінних, потрібно спробувати розробити порівняно великий проект або попрацювати в команді. Учні ж пишуть невеликі програмки, тому цей "дріб'язок" просто не сприймають.
|
|
| |
© Форум інформатиків України, 2007-2023.  |