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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 15.06.2011, 16:43   #1
nikepol
 
Регистрация: 16.11.2010
Сообщений: 3
Восклицание процедуры, цикл нахождения четных элементов каждой строки массива и вычисление из суммы

Код:
Program procedures;
uses crt;       {модуль для работы с программой в текстовом режиме}
const           {секция объявления констант}
 nmax=20;
 kmax=20;
type
 MyArray=array [1..nmax,1..kmax] of integer;
 ItArray=array [1..nmax] of integer;
Var             {секция объявления переменных}
    a:MyArray;   {двумерный массив; переменные целого типа}
    Sum:ItArray;         {одномерный массив; переменные целого типа}
    i,j,n,max,error,k,z,c,v,s:Integer;          {переменные целого типа}
    ch:char;                               {переменная - символ}
    x: Array [1..100] of integer;
    y: Array [1..100] of integer;
procedure EnterInfo;
Begin
   clrscr;                                   {начало программы}
   Textbackground (white);             {цвет фона}
   Textcolor(red);                       {цвет символов}
    clrscr;                                {очистка экрана}
   Gotoxy(20,6);                           {вывод текста в указанном месте экрана}
   Writeln ('Вашему вниманию представляется программа, ');  {вывод информации на экран}
   Gotoxy(20,7);
      Writeln ('которая суммирует четные элементы каждой строки');
   Gotoxy(20,8);
      Writeln ('данного двумерного массива.');
  Textcolor(red);
   Gotoxy(35,10);
      Writeln ('Внимание!');
   Gotoxy(20,12);
  Textcolor(black);
      Writeln('1)Количество строк и столбцов данного двумерного');
   Gotoxy(20,13);
      Writeln('массива должно быть в интервале от 2 до 20.');
   Gotoxy(20,14);
      Writeln('2)Элементы массива - целые числа в пределе,');
   Gotoxy(20,15);
     Writeln('от -1000 до 1000.');
   Gotoxy(40,17);
  Textcolor(black);
      Writeln('Программу составил студент ');
   Gotoxy(40,18);
      Writeln('---');
   Gotoxy(40,20);
      Writeln ('----.');
   Gotoxy(40,21);
      Writeln('Москва,2010');
   Gotoxy(20,23);
     textcolor(blue);
      Writeln('Нажмите любую клавишу для продолжения:');
    Ch:=readkey; {считывание символа с клавиатуры}
   end;

procedure  EnterSizeMatrix (var n,k,error:integer);
  begin
  repeat              {начало цикла с постусловием}
   textcolor(black);
  write ('Введите количество строк массива в интервале от 2 до 20:');
  {$i-}               {отключение проверки ошибок ввода данных}
  readln(n);          {ввод с клавиатуры значения переменной}
  Error:=IOResult;    {возвращение результата последней операции ввода/вывода}
  {$i+}               {включение проверки ошибок ввода данных}
  if (n<2) or (n>20) or (error<>0) then
			begin
			  Textcolor(red);
			  writeln('Неверно задано количество строк в массиве! Повторите ввод!');
			end;
  until(n>=2) and (n<=20) and (error=0);    {конец цикла с постусловием}
  writeln;
  {---------ввод количества столбцов двумерного массива с проверкой-------}
  repeat
   textcolor(white);
  write ('Введите количество столбцов массива в интервале от 2 до 20:');
  {$i-}
  readln(k);
  Error:=IOResult;
  {$i+}
  if (k<2) or (k>20) or (error<>0) then
			begin
			  Textcolor(red);
			  writeln('Неверно задано количество столбцов в массиве! Повторите ввод!');
			end;
until(k>=2) and (k<=20) and (error=0);
  end;
procedure EnterElementMatrix (var n,k,max: integer; var a:MyArray);
   var
      i,j: integer;
   begin
    writeln;
    gotoxy(20,5);
    Writeln('Введите значения элементов двумерного массива');
   Gotoxy(35,8);
  Textcolor(yellow);
    Writeln('Внимание!!!');
   Gotoxy(6,9);
   Textcolor(black);
    Writeln('1)Значение элементов массива должно быть в пределе от -1000 до 1000');
   Gotoxy(6,10);
    Writeln('2)Значения элементов строки массива проставляются через клавишу "пробел"!');
   Gotoxy(6,11);
    Writeln('3)Для ввода элементов следующей строки массива нажмите клавишу "Enter"!');
    Writeln;
    textcolor(white);
  Writeln('Введите элементы массива:');
  for i:=1 to n do begin
      repeat
      Write ('x[',i,']=');
      {$i-}
      Read (x[i]);
      Error=IOResult;
      {$i+}
     for j:=1 to k do
		  begin
		   a[i,j]:=0;
		   repeat
		   textcolor(white);
		   {$i-}
		   read(a[i,j]);
		   Error:=IOResult;
		   {$i+}
		   if (a[i,j]>1000) or (a[i,j]<-1000) or (error<>0) then
		      begin
		      textcolor(red);
		      writeln('Ошибка в значении элемента массива! Введите элемент в интервале');
		      writeln('от -1000 до 1000 вместо ошибочного и нажмите клавишу "Enter"!');
		      end;
		   until (a[i,j]<=1000) and (a[i,j]>=-1000) and (error=0);
		  end;
		  writeln;
    end;
    end;
{------цикл нахождения четных элементов каждой строки массива и вычисление из суммы-----}

Помогите реализовать пометку каждой строки то есть типа
A[1,1]=
A[1,2]=
и так далее.

Последний раз редактировалось Stilet; 15.06.2011 в 17:12.
nikepol вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Динамические структуры данных. Вычисление суммы элементов массива Kroleg Помощь студентам 1 25.04.2011 23:06
Вычислить и запомнить суммы положительных элементов каждой строки матриц Babur4iK Помощь студентам 8 18.11.2009 13:56
Вычислить и запомнить суммы положительных элементов каждой строки матрицы kiko Паскаль, Turbo Pascal, PascalABC.NET 1 13.12.2008 17:32