![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 28.05.2010
Сообщений: 30
|
![]()
Решите Плиз народ Дан двухмерный масив целых чисел. Вставить в него строку из нулей между всеми строками, в которых количество положительных элементов равно количеству отрицательных
|
![]() |
![]() |
![]() |
#2 |
Пользователь
Регистрация: 28.05.2010
Сообщений: 30
|
![]()
Решите Плиз народ Иначе мне пипец будет Дан двухмерный масив целых чисел. Вставить в него строку из нулей между всеми строками, в которых количество положительных элементов равно количеству отрицательных[/QUOTE]
|
![]() |
![]() |
![]() |
#3 |
Форумчанин
Регистрация: 23.10.2008
Сообщений: 460
|
![]()
стучи в аську, сделаю
|
![]() |
![]() |
![]() |
#4 |
Форумчанин
Регистрация: 12.05.2010
Сообщений: 219
|
![]()
елки палки, язык-то какой? И в каком виде дан массив? Пускай будет консольное приложение на паскале, размерность массива и массив вводятся с клавиатуры
var n,m, i,j , chislo_poloj, chislo_otr, razmer_y, number_str:integer; var x:array [1..20,1..20] of real; var y:array[1..20] of integer;//в этот массив будем складывать номера подходящих строк writeln('введите число строк массива'); readln(n); writeln('введите число столбцов массива'); readln(m); writeln('введите элементы массива'); //считываем весь массив for i:=1 to n do//для каждой строки begin for j:=1 to m do begin read(x[i,j]); end; readln; end; //считаем, какие строки подходят под условие razmer_y:=0; for i:=1 to n do begin chislo_poloj:=0; chislo_otr:=0; for j:=0 to m do begin if(x[i,j]<0) then chislo_otr:=chislo_otr+1 else if (x[i,j]>0) then chislo_poloj:=chislo_poloj+1; end; if (chislo_poloj=chislo_otr) then begin razmer_y:=razmer_y+1; y[razmer_y]:=i; end; end; //теперь в массиве y хранятся номера строк, для которых выполяется наше условие. Нифига непонятно из твоих слов - мы заменяем все подобные строки нулями, или вставляем "дополнительную" строку из нулей между двумя подходящими строками в случае, если они являются СОСЕДНИМИ. Пускай будет второе. for i:=1 to (razmer_y-1) do begin if ((y[i+1]-y[i])=1) //если строки являются соседними then begin number_str:=i+1;//тогда нужно вставить строку из нулей на позицию i+1 //сдвигаем все строки начиная с этой позиции и ниже на одну вниз(чтобы нули наши влезли и ничего не затерли) for j:=n down to number_str do for k:=1 to m do begin x[j+1,k]:=x[j,k]; end; n:=n+1; //добавляем нули for k:=1 to m do x[numder_str,k]:=0; end; end; //как-то так Последний раз редактировалось Snejnaya; 28.05.2010 в 17:09. |
![]() |
![]() |
![]() |
#5 |
Пользователь
Регистрация: 28.05.2010
Сообщений: 30
|
![]()
это надо в паскале
|
![]() |
![]() |
![]() |
#6 |
Форумчанин
Регистрация: 12.05.2010
Сообщений: 219
|
![]()
приведенное выше и есть в паскале)))
|
![]() |
![]() |
![]() |
#7 |
Пользователь
Регистрация: 28.05.2010
Сообщений: 30
|
![]()
Большое спасибо
|
![]() |
![]() |
![]() |
#8 |
Пользователь
Регистрация: 28.05.2010
Сообщений: 30
|
![]()
Если не сложно кто нибудь скиньте на мыло Блок-схему muhametzhanovr@mail.ru
|
![]() |
![]() |
![]() |
#9 |
Пользователь
Регистрация: 28.05.2010
Сообщений: 30
|
![]()
Она не работает
![]() |
![]() |
![]() |
![]() |
#10 |
Пользователь
Регистрация: 28.05.2010
Сообщений: 30
|
![]()
кто нибудь помогите с этой тупой задачей
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Двухмерные массивы | lilia2121 | Помощь студентам | 0 | 25.05.2010 10:37 |
C++. Двухмерные массивы. | bpystep | Помощь студентам | 11 | 23.05.2010 13:49 |
Двухмерные массивы | Sexy girl* | Помощь студентам | 1 | 24.12.2009 04:50 |
двухмерные мыссивы! | sp.caster | Помощь студентам | 0 | 09.04.2009 13:21 |
Двухмерные массивы (С++) | Nattka | Помощь студентам | 2 | 04.12.2008 21:15 |