помогите срочно написать на завтра программу, Pascal,задача простая,но я туплю |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
помогите срочно написать на завтра программу, Pascal,задача простая,но я туплю |
NESC |
Сообщение
#1
|
Группа: Пользователи Сообщений: 4 Пол: Мужской Реальное имя: Виктор Репутация: 0 |
Даны действительные числа a1, a2 ... a16 . Найти максимальную сумму из (a1+a16; a2+a15; a8+a9) и минимальное произведение из (a1*a9; a2*a10; a3*a9; ... a8*a16) Smax и Pmin Вывести на память.
Очень прошу!помогите!!не успею до завтра,а это всё таки лаба((( |
Айра |
Сообщение
#2
|
Профи Группа: Пользователи Сообщений: 731 Пол: Женский Репутация: 25 |
Для начала отредактируй название темы..
Покажи, что делал? Что именно непонятно? Цитата Вывести на память. Может на печать? Сообщение отредактировано: Айра - |
NESC |
Сообщение
#3
|
Группа: Пользователи Сообщений: 4 Пол: Мужской Реальное имя: Виктор Репутация: 0 |
скорее всего,просто ошиблась когда распечатывала,так,я кажется стал вникать в задачу,сори что беспокоил
|
NESC |
Сообщение
#4
|
Группа: Пользователи Сообщений: 4 Пол: Мужской Реальное имя: Виктор Репутация: 0 |
Uses CRT; скажите плз,где ошибка,он мне всегда выводит одно и тоже число при выводе минимального произведения,выдаёт всегда -10319 |
Michael_Rybak |
Сообщение
#5
|
|||
Michael_Rybak Группа: Пользователи Сообщений: 1 046 Пол: Мужской Реальное имя: Michael_Rybak Репутация: 32 |
По программе. Во-первых, у тебя в цикле repeat-until последнее значение j равно 17, а массив заполняется только до 16. Во-вторых, последний цикл у тебя от 2 до 50, а нужно от 2 до n. |
|||
Айра |
Сообщение
#6
|
Профи Группа: Пользователи Сообщений: 731 Пол: Женский Репутация: 25 |
А сумма точно трех пар нужна, не последовательности?
А как тебе такой вариант нахождения произведения:
Сообщение отредактировано: Айра - |
Michael_Rybak |
Сообщение
#7
|
Michael_Rybak Группа: Пользователи Сообщений: 1 046 Пол: Мужской Реальное имя: Michael_Rybak Репутация: 32 |
Цитата for i:=1 to ((n div 2) + (n mod 2)) do верхняя граница разве не n? |
Айра |
Сообщение
#8
|
Профи Группа: Пользователи Сообщений: 731 Пол: Женский Репутация: 25 |
Так, что-то я похоже не то сделала:
(a1*a9; a2*a10; a3*a9; ... a8*a16) Это как тогда выглядит последовательность? или здесь не 9, а 11? Если 11, тогда верхняя граница (n div 2), ((n mod 2) тогда даже не нужен).. |
Michael_Rybak |
Сообщение
#9
|
Michael_Rybak Группа: Пользователи Сообщений: 1 046 Пол: Мужской Реальное имя: Michael_Rybak Репутация: 32 |
по-моему так: 1*9, 2*10, 3*10, 4*11, 5*11, 6*12 ...
|
Айра |
Сообщение
#10
|
Профи Группа: Пользователи Сообщений: 731 Пол: Женский Репутация: 25 |
...у автора по-другому: 1*9,2*10,3*9...8*16
..буду ждать его разъяснения.. |
NESC |
Сообщение
#11
|
Группа: Пользователи Сообщений: 4 Пол: Мужской Реальное имя: Виктор Репутация: 0 |
Итак,там только 3 суммы,задание я написал идентично с оригиналом,а в последовательности с умножением,там будет так:при нечётном первом а(а1 а3 а5...) 2 множитель всегда а9,а когда 1 множитель чётный то в номере будет шаг 2(а10 а12 а14 а16) лаба была сегодня,и на ней я сделал этот вариант,всё вышло,проблема лишь возникла в блок схеме для этой программы,и поэтому препод даже не посмотрела программу.Спасибо огромное нашему модератору,он вовремя подсказал,там осталось чуток подправить и она заработала
Вот код: Код Uses CRT; Const n=16; Var a:array[1..n] of Integer; b:array[1..n] of Integer; i, j,s1,s2,s3,p,x,x1:Integer; Begin Clrscr; Randomize; Writeln('Vvedem possledovatelnost chisel'); For i:=1 to n do Begin a[i]:= random(20); Writeln(a[i]); Writeln; End; s1:=a[1]+a[16]; s2:=a[2]+a[15]; s3:=a[8]+a[9]; if s1>s2 then if s1>s3 then writeln('max summa=',s1) else writeln('max summa=',s3) else if s2>s3 then writeln('max summa=',s2) else writeln('max summa=',s3); i:=0; j:=9; { repeat {for j:=9 to 16 do begin } { i:=i+1; if i mod 2 = 0 then j:=j+1; begin b[i]:=a[i]*a[j]; end; until (i>=n);} x1:=999; for j:=0 to 7 do begin j:=j+1; for i:=9 to n do begin i:=i+1; x:=a[j]*a[i]; write(' ',x); if x1>x then x1:=x else end;end; writeln(' min proizvedenie=',x1); { i:=1; p:=b[1]; for j:= 2 to n do if b[j]<p then begin p:=b[j]; i:=j end; writeln('min proizvedenie=',p);} Readln; End. |
klem4 |
Сообщение
#12
|
Perl. Just code it! Группа: Пользователи Сообщений: 4 100 Пол: Мужской Реальное имя: Андрей Репутация: 44 |
модер тебе еще замечание сделал, которое ты проигнорировал, если в течении 10 минут не переименуешь тему, она будет закрыта.
-------------------- perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
|
Текстовая версия | 29.03.2024 2:11 |