![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() |
webgirl |
![]()
Сообщение
#1
|
Гость ![]() |
вычислить следующую сумму и определить, при каком n произойдет переполнение строки
1^2+2^2+3^2+...+n^2 составить программу, кот. возводит число в куб, используя следующее свойство: 1^3=1 2^3=3+5 3^3=7+9+11 4^3=13+15+17+19 (эту я вроде с грехом пополам сделала, но такой бред получился) сост программу для: (((((1?2)?3)?4)?5)?6)=35 заранее очень вам благодарна ![]() |
![]() ![]() |
volvo |
![]()
Сообщение
#2
|
Гость ![]() |
webgirl
Насчет второй - вверху приведен текст, который, как видно, и хотел препод... Третью я решил ОЧЕНЬ нетривиально - боюсь, что она преподу тоже не понравится: Код type myFunc = function(a, b: integer):integer; function myAdd(a, b: integer): integer; far; begin myAdd := a + b end; function mySub(a, b: integer): integer; far; begin mySub := a - b end; function myMult(a, b: integer): integer; far; begin myMult := a * b end; function myDiv(a, b: integer): integer; far; begin myDiv := a div b end; const nums: array[1 .. 6] of integer = (1, 2, 3, 4, 5, 6); result = 35; type oper = (opPlus, opMinus, opMult, opDiv); const fs: array[oper] of myFunc = (myAdd, mySub, myMult, myDiv); ch: array[oper] of char = ('+', '-', '*', '/'); function f(a1, a2, a3, a4, a5: oper): integer; begin f := fs[a5](fs[a4](fs[a3](fs[a2](fs[a1](nums[1], nums[2]), nums[3]), nums[4]), nums[5]), nums[6]); end; var s1, s2, s3, s4, s5: oper; found: boolean; begin for s1 := opPlus to opDiv do for s2 := opPlus to opDiv do for s3 := opPlus to opDiv do for s4 := opPlus to opDiv do for s5 := opPlus to opDiv do If f(s1, s2, s3, s4, s5) = result then begin found := true; writeln('was found:'); writeln('1'+ch[s1]+'2'+ch[s2]+'3'+ch[s3]+'4'+ch[s4]+'5'+ch[s5]+'6'); end; if not found then writeln('was not found:') end. ![]() А над второй подумаю... |
![]() ![]() |
![]() |
Текстовая версия | 20.07.2025 15:54 |