Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 20.10.2010, 22:11   #1
ДваДваВо7
Подтвердите свой е-майл
 
Регистрация: 15.10.2010
Сообщений: 29
Печаль Массивы

Есть пример моей задачи....

Код:
program Project3;

{$APPTYPE CONSOLE}

uses
  SysUtils,
  InOut;

type
 TVector1 = array of Integer;
 TVector2 = array [1..5] of Integer;
 TMatrix1 = array of TVector1;
 TMatrix2 = array of array of Integer;
var
a,b: TVector1;
a1,b1: TVector2;
c: TMatrix1;
d: TMatrix2;
i,j: Integer;
begin
  { TODO -oUser -cConsole Main : Insert code here }
  SetConsoleTitleCyr('Лабораторная работа №4: Структура данных.Массивы');
  SetConsoleCP_1251;
  Randomize;
  SetLength(a,10);
  WriteLn ('Массив a:');
  for i := 0 to High(a) do
begin
  a[i]:=-10+Random(21);
  Write(a[i]:5);
end;
WriteLn;
b:=a;
b[3]:=777;
WriteLn ('Массив b:');
for i := 0 to High(b) do
  WriteLn(b[i]:5);
  WriteLn;
  WriteLn ('a[3] =',a[3]);
 b:= Copy(a,3,2);
 b[0]:=555;
WriteLn ('Массив b:');
 for i := 0 to High(b) do
  WriteLn;
  WriteLn (b[i]:5);
WriteLn;
  WriteLn ('a[0] =',a[0]);
  SetLength(a,7);
  WriteLn('Массв а:');
  for i := 0 to high(a) do
    Write(a[i]:5);
    WriteLn;
    SetLength(b,5);
  WriteLn('Массв b:');
  for i := 0 to High(b) do
  WriteLn (b[i]:5);
  WriteLn;
  WriteLn('Массив а1:');
  for i := 1 to 5 do
    begin
  a1[i]:=-10+Random(21);
  Write(a1[i]:5);
  end;
  Writeln;
  b1:=a1;
  b1[3]:=777;
  WriteLn('Массив b1:');
  for i := 1 to 5 do
  WriteLn (b[i]:5);
  WriteLn;
  WriteLn('a1[3] = ',a1[3]);
  SetLength (c,3,4);
 WriteLn('Массив c:');
 for i := 0 to high(c)do
   begin
   for j := 0 to high(c[i]) do
     begin
       c[i,j]:= -10 + Random(21);
       Write (c[i,j]:5);
       end;
    WriteLn;
    end;
   b:= Copy(c[1]);
   WriteLn('Массив b:');
   for i := 0 to high(b) do
     WriteLn(b[i]:5);
     WriteLn;
     SetLength(d,5);
     writeln('Массив d;');
     for i := 0 to high(d) do
       begin
         SetLength(d[i],i+1);
         for j := 0 to High (d[i]) do
           begin
             d[i,j]:=-10 + Random(21);
             Write(d[i,j]:5);
         end;
         WriteLn;
       end;
   d[3,10]:=666;
   WriteLn('Массив d:');
   for i := 0 to high (d) do
     begin
       for j := 0 to High (d[i]) do
         Write (d[i,j]:5);
         WriteLn;
     end;
     ReadLn;
end.
как по этому примеру сделать это :

Разработать программу, позволяющее в двумерном массиве определить количество и положение элементов,не больше заданного пользователем числа и сумма индексов которых четна.Обеспечить бессбойную работу программы и возможность выполнения требуемых действий несколько раз без перезапуска программы.

Что то я вообще запутался и понять ни че не могу...помогите(((((

Последний раз редактировалось Stilet; 21.10.2010 в 11:28.
ДваДваВо7 вне форума Ответить с цитированием
Старый 20.10.2010, 22:38   #2
pj-infest
Пользователь
 
Аватар для pj-infest
 
Регистрация: 09.10.2010
Сообщений: 25
По умолчанию

мне кажетса, чтоби несколько раз виполнить програму, можна использоватса оператором перехода,

но лутше всю програму розбить на процедури, таким образом несколько раз можно будет виполнить, просто повторнно визиваючи набор нужних процедур.
pj-infest вне форума Ответить с цитированием
Старый 20.10.2010, 22:55   #3
ДваДваВо7
Подтвердите свой е-майл
 
Регистрация: 15.10.2010
Сообщений: 29
По умолчанию

Цитата:
Сообщение от pj-infest Посмотреть сообщение
мне кажетса, чтоби несколько раз виполнить програму, можна использоватса оператором перехода,

но лутше всю програму розбить на процедури, таким образом несколько раз можно будет виполнить, просто повторнно визиваючи набор нужних процедур.
ух сложно то все как(((((А поп роще че нибудь можете сказать или показать7??А то вообще ппц
ДваДваВо7 вне форума Ответить с цитированием
Старый 21.10.2010, 11:09   #4
GetMax
Форумчанин
 
Регистрация: 21.10.2010
Сообщений: 588
По умолчанию

Лично мое мнение,что бы программа выполнялась несколько раз можно попробывать использовать цикл Repeat-Until. Выходом из цикла может служить нажатие какой-либо клавиши
Пользователь не знает, чего он хочет, пока не увидит то, что он получил.
Для благодарностей WMR R145235935681
GetMax вне форума Ответить с цитированием
Старый 21.10.2010, 11:36   #5
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

О Ужос! Что тут сложного?
Код:
program Project1;

{$APPTYPE CONSOLE}

uses
  SysUtils;
var a:array[1..10,1..10] of integer;
 q,w,n,kolvo:integer;
 c:char=' ';
begin
 for q:=Low(a) to high(a) do  begin
  for w:=Low(a[q]) to high(a[q]) do  begin
    a[q,w]:=random(100);write(a[q,w]:5);
  end; writeln;
 end;
 writeln;
 repeat
   Write('Kol-vo:');Readln(n);kolvo:=0;
   for q:=Low(a) to high(a) do  begin
    for w:=Low(a[q]) to high(a[q]) do  begin
      if a[q,w]<=n then begin write('(',q,w,')  ');inc(kolvo);end;
    end;
   end;
   writeln('kolvo=',kolvo);
   writeln('repeat? Y\N');
   readln(c);

 until c='n';
  { TODO -oUser -cConsole Main : Insert code here }
end.
Зачем усложнять все.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 21.10.2010, 11:41   #6
Niro
Форумчанин
 
Аватар для Niro
 
Регистрация: 23.09.2010
Сообщений: 682
По умолчанию

Код:
repeat
.............
readln(chislo);
for i:=1 to n do
  for j:=1 to m do
   begin
     if (massiv[i,j]<chisla) and ( (i+j) mod 2=0) then 
                                                                begin 
                                                                  k:=k+1; 
                                                                  writeln('Polojenie (',i,';',j,')'); 
                                                                end;
   end;
writeln('число найденный элементов',k);
writeln('Выйти?,y/n');
readln(otv);
until otv='no';
код не проверял
Проще всего признать свою ошибку.
Гораздо труднее еЁ осознать и исправить.
Niro вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Динамические массивы и массивы варианты N@stya Помощь студентам 0 11.06.2010 21:09
С++, Массивы, динамические массивы. -Sunshine- Помощь студентам 1 19.04.2010 02:17
Массивы evgenjke Фриланс 10 19.02.2010 20:37
Даны одномерные массивы А и В. Сформировать массивы, состоящие из элемент LyaLya Помощь студентам 15 20.12.2009 14:12