IPB
ЛогинПароль:

> Правила раздела!

1. Заголовок или название темы должно быть информативным !
2. Все тексты фрагментов программ должны помещаться в теги [code] ... [/code] или [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ" и используйте ПОИСК !
4. НЕ используйте форум для личного общения!
5. Самое главное - это раздел теоретический, т.е. никаких задач и программ (за исключением небольших фрагментов) - для этого есть отдельный раздел!

> Массивы
сообщение
Сообщение #1


Гость






Помогите решить такие две задачки:
Добавить к одному, сортированному по возрастающей, 3 элементному массиву(из целых чисел, значения которых от -999 до 9999), от одного элемента до 25(включит.) элементов следующим образом: результат каждого прибавления не должен быть убывающим;. Если из этого будет возможно сделать квадратную матрицу, то сделать и найти сумму элементов главной диагонали матрицы. Если нет, то надо вывести матрицу по 3 элемента в ряд.

Ввести двумерный массив m*n(m=n+2; 2<=n<=40), значения элементов массива от 1 до 9. Найти суммы столбцов.
Потом, из каждой колонки убрать по 2 элемента(один элемент соответс. индексу колонки и предыдущий элемент. напр. из 3 колонки убрать 3 и 2 элемент).
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
сообщение
Сообщение #2


Гость






Цитата
В условии второй задачи: "убрать 2 элемента" имеется ввиду обнулить их значения........ ???

Да, обнулить. Я написала как это сделать:
Код
uses crt;
const a=42;
var
 mas:array [4..a+2,2..a] of byte;
 i,j,x:byte;
 s:word;
begin
 clrscr;
 randomize;
 write('Vvedite kolitsestvo elementov v massive. x= ');
 readln(x);
{Sozdanie massiva}
 writeln('Massiv:');
 for j:=1 to x+2 do
 begin
   for i:=1 to x do
   begin
     mas[j,i]:=random(9)+1;{min- 1; max- 9}
     write(mas[j,i]:2);
   end;
 writeln;
 end;
 readkey;
{Summa stolbzov}
 writeln('Summa:');
 for i:=1 to x do
 begin
   s:=0;
   for j:=1 to x+2 do
   s:=s+mas[j,i];
   writeln('Summa ',i,' stolbza:',s:3);
 end;
 readkey;
{Obnullenie massiva}
 writeln('Obnullenie elementov massiva:');
 for j:=1 to x+2 do
 begin
   if j<=x then mas[j,j]:=0;
   if j+1<=x then  mas[j,j+1]:=0;
 end;
 for j:=1 to x+2 do
 begin
   for i:=1 to x do write(mas[j,i]:2);
   writeln;
 end;  
repeat until keypressed;
end.


Только я не знаю как поднять не обнулленый элементы вверх.
 К началу страницы 
+ Ответить 

Сообщений в этой теме
olga   Массивы   12.12.2002 19:41
Ivs   Re: Массивы   12.12.2002 21:45
olga   Re: Массивы   14.12.2002 16:41
Дядя Борланд   Re: Массивы   22.12.2002 6:27


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 17.04.2024 1:19
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name