![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Немогу правлиьно составить условие.
Условие.Дан массив 4х4(рандомные числа).Нужно все числа после первого нуля заменить суммой всех положительных чисел до него.Как правильно составить условие if? ![]() |
#2
|
|||
|
|||
![]() Что значит "первый нуль". Обходить массив можно поразному.
|
#3
|
||||
|
||||
![]() А и не надо усложнять, раз не сказано как делать обход, то на наше усмотрение:
Код:
const ASize = 4; var A4x4: Array[1..ASize,1..ASize] of Integer; i,j,Summ,Probe: Integer; ZeroFound: Boolean; begin Randomize; ZeroFound := False; Probe := 0; Repeat Inc(Probe); WriteLn('Probe', Probe); for i := 1 to ASize do begin for j := 1 to ASize do begin A4x4[i,j] := -5 + Random(10); if not ZeroFound then ZeroFound := A4x4[i,j] = 0; Write(A4x4[i,j]:4); end; WriteLn; end; Until ZeroFound; for i := 1 to ASize do begin Summ := 0; ZeroFound := False; for j := 1 to ASize do begin if not ZeroFound and (A4x4[i,j] = 0) then begin ZeroFound := True; Continue; end; if ZeroFound then A4x4[i,j] := Summ else if A4x4[i,j] > 0 then Summ := Summ + A4x4[i,j]; end; end; WriteLn; for i := 1 to ASize do begin for j := 1 to ASize do Write(A4x4[i,j]:4); WriteLn; end; ReadLn; end. ![]() Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. Последний раз редактировалось Страдалецъ, 20.02.2016 в 11:21. |
#4
|
|||
|
|||
![]() Цитата:
Последний раз редактировалось Atheist, 20.02.2016 в 12:42. |