![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() |
ZVER |
![]() ![]()
Сообщение
#1
|
![]() Группа: Пользователи Сообщений: 1 Пол: Мужской Реальное имя: Артур Репутация: ![]() ![]() ![]() |
1-ю задачку легче решить через цикл While. Во всех задачках массивы задаются randomize. Помогите пожалуйста! Спасибо большое! ![]() |
![]() ![]() |
volvo |
![]()
Сообщение
#2
|
Гость ![]() |
Цитата 1-ю задачку легче решить через цикл While. Кто сказал? Тут как раз решение через While и через For совершенно одинаковое по сложности... Просто пройти по всему массиву, если элемент a(i) нулевой - то увеличить число нулей, если нет - значит перенести a(i) в позицию a(i - count), где count - число нулей в массиве на данный момент... А потом, по окончании основного цикла, пробежаться по count последних элементов и обнулить их...Как заполнять массивы случайными значениями, см. в FAQ-е Вторую задачу сначала разбей на подзадачи, не пытайся сделать все сразу... Сообщение отредактировано: volvo - 12.10.2008 15:03 |
Unconnected |
![]()
Сообщение
#3
|
![]() mea culpa ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 372 Пол: Мужской Реальное имя: Николай Репутация: ![]() ![]() ![]() |
К задаче 2,только нет исключения для одинаковых наибольших элементов матрицы.
Код Program matr; uses crt; const N=5;M=5; var mas:array[1..N,1..M] of integer; a,b,c,d,e,x,z:integer; y:real; begin randomize; clrscr; for a:=1 to n do for b:=1 to m do begin mas[a,b]:=random(20); end; for a:=1 to n do begin for b:=1 to m do begin write(mas[a,b],' '); end; writeln; end; c:=mas[1,1]; for a:=1 to n do for b:=1 to m do begin if c<mas[a,b] then c:=mas[a,b]; end; for a:=1 to n do for b:=1 to m do begin if c=mas[a,b] then begin d:=b; e:=a; end; end; for a:=1 to n do for b:=d+1 to m do begin x:=x+mas[a,b]; end; for a:=e+1 to n do z:=0; for b:=1 to m do begin y:=y+mas[a,b]; z:=z+1; end; y:=y/z; writeln('Сумма-',x); writeln('Среднее арифметическое-',y:3:3); readln; end. -------------------- "Знаешь, стыдно - когда не видно, что услышал всё, что слушал.."
|
Гость |
![]()
Сообщение
#4
|
Гость ![]() |
пожалуйста решите задачку:
обнулить все строки двумерного массива A(I..m, I..n) содержащее элемент из интервала(a..b) ) все нулевые строки сдвинуть к началу массива, сохраняя их порядок расположения в массиве. в первой строке входного файла AmnBk.in записаны натуральные числа m и n. во второй стоке файла находятся a и b. в следующих m строках записаны по n целых чисел. В первую строку выходного файла AmnBk.out записать число не нулевых строк преобразованного массива, а следующих m строках этого файла записаны по n целых чисел - строки преобразованного массива. все числа находятся в диапазоне от 0...10 в 9 степени |
![]() ![]() |
![]() |
Текстовая версия | 27.07.2025 10:25 |