1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
| timan |
25.12.2004 0:43
Сообщение
#1
|
|
Гость |
В одномерном массиве, состоящем из n вещественных элементов вычислить:
1. Кол-во элементов меньших С. 2. Сумму целых частей элементов массива, расположенных после последнего отрицательного элемента. Преобразовать массив таким образом, чтобы сначала располагались все элементы, отличающие от максимального не более чем на 20 %, а потом– все остальные. |
![]() ![]() |
| murphy |
25.12.2004 17:28
Сообщение
#2
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 98 Пол: Мужской Репутация: 0 |
Цитата Преобразовать массив таким образом, чтобы сначала располагались все элементы, отличающие от максимального не более чем на 20 %, а потом– все остальные. Что то такое Код program jjh; const n=5; B: array[1..n] of real = (2.5, -2.0, 1.5, 2.4, -15.45); var A: array[1..n] of real; max, bu: real; i, j, k: byte; function findmax(X:array of real): real; var i,n: byte; m: real; begin m:=X[1]; for i:=0 to high(X)-1 do if X[i]>m then m:=X[i]; findmax:=m; end; function otl (m, r: real): boolean; begin if (abs(m-r)/m)*100>20 then otl:=false else otl:=true; end; begin max:=findmax(B); writeln(max:5:2); k:=0; for i:=1 to n do if not(otl(max ,B[i])) then begin inc(k); A[k]:=B[i]; {bu:=B[i]; for j :=i downto k do B[j]:=b[j-1]; b[k]:=bu;} {B[j]:=B[j]+B[k]; B[k]:=B[j]-B[k]; B[j]:=B[j]-B[k]; inc(k);} end; for i:=1 to n do if otl(max ,B[i]) then begin inc(k); A[k]:=B[i]; end; for i:=1 to n do write(A[i]:7:2); readln end. Не тестировал и не компелировал... -------------------- collect the infotrons and find Exit
|
timan операции с массивом 25.12.2004 0:43
klem4 1. Кол-во элементов меньших С.
uses crt;
const n... 25.12.2004 16:44
volvo murphy
Вот и напрасно - запутался в значениях...... 25.12.2004 17:58
murphy :p2: 25.12.2004 19:49
Guest А как вычеслить Пункт 2
Сумму целых частей элемен... 5.09.2005 17:26
volvo Проходи по массиву из конца в начало, пока не встр... 5.09.2005 17:44
Guest А можно на примере :) 5.09.2005 18:01
volvo const
n = 5;
a: array[1 .. n] of real =
(2... 5.09.2005 19:42![]() ![]() |
|
Текстовая версия | 8.12.2025 7:16 |