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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 16.05.2012, 20:04   #1
Lena1808
Новичок
Джуниор
 
Регистрация: 16.05.2012
Сообщений: 2
По умолчанию Задачи на обработку массива и матрицы в Turbo Pascal

1. В одномерном массиве, состоящем из n вещественных элементов:
1) поменять местами второй отрицательный с последним положительным элементами;
2) вычислить сумму квадратов всех элементов заданного массива, за исключением элементов, кратных пяти.
Осуществить циклический сдвиг элементов массива влево на одну позицию.
2. Дана целочисленная прямоугольная матрица.
1) найти номера строк, в которых на всех нечетных позициях стоят нули;
2) определить количество различных элементов матрицы.
Lena1808 вне форума Ответить с цитированием
Старый 16.05.2012, 20:18   #2
denisbrain
Форумчанин
 
Регистрация: 29.05.2011
Сообщений: 449
Радость

Цитата:
Сообщение от Lena1808 Посмотреть сообщение
1. В одномерном массиве, состоящем из n вещественных элементов:
1) поменять местами второй отрицательный с последним положительным элементами;
2) вычислить сумму квадратов всех элементов заданного массива, за исключением элементов, кратных пяти.
Осуществить циклический сдвиг элементов массива влево на одну позицию.
2. Дана целочисленная прямоугольная матрица.
1) найти номера строк, в которых на всех нечетных позициях стоят нули;
2) определить количество различных элементов матрицы.
эти функции могут помочь

Код:
{1. В одномерном массиве, состоящем из n вещественных элементов:
1) поменять местами второй отрицательный с последним положительным элементами;
2) вычислить сумму квадратов всех элементов заданного массива, за исключением элементов, кратных пяти.
Осуществить циклический сдвиг элементов массива влево на одну позицию.
}
uses crt;
  const maxCount=100;
var
  a:array [1..MaxCount] of real;
  aCount:integer; {размер массива }
  
  
procedure CreateArray(var a:array [1..MaxCount] of real;Ncount:integer);
var i:integer;
begin
randomize;// инициализация
  for i:=1 to ncount do  a[i]:=1+random(20);
end;
// сдвиг массива влево
procedure move_left(var a:array [1..MaxCount] of Real;Ncount:integer; index:integer);
var i:integer;
begin
 for i:=index to ncount do  a[i]:=a[i+1];
end;

Procedure ShowArray(var a:array [1..Maxcount] of real;Ncount:integer);
var s:string;
    i:integer;
begin
s:='';
 write(a[1]);
 for i:=2 to ncount do
 write(',',a[i]);
end;
procedure ChangeArrayElement(var a:array [1..Maxcount] of real;IndexFrom:integer;IndexTo:integer);
var T:real;
begin
  t:=a[IndexTo]; // копируем значение элемента IndexTo
  a[IndexTo]:=a[IndexFrom]; // копиоуем в IndexTo значения из IndexFrom
  a[IndexFrom]:=t; // копиоуем в IndexFrom значения из IndexTo
  // операция завершена
end;


{1) поменять местами второй отрицательный с последним положительным элементами;
Осуществить циклический сдвиг элементов массива влево на одну позицию.
 }
 
 Procedure ChangeElementForU(var a:array [1..Maxcount] of real;Ncount:integer);
 var x:integer;
     t1,t2:integer;
     otr:integer;
 begin
 otr:=0;
 t1:=-1;
 t2:=-1;
     for x:=1 to Ncount do begin  if a[x]<0 then  inc(otr); if otr=2 then begin t1:=x; end;end;
          for x:=1 to Ncount do if a[x]>=0 then  t2:=x;
          if t1>0 then if t2>0 then
          ChangeArrayElement(a,t1,t2);
 end;
{ 2) вычислить сумму квадратов всех элементов заданного массива, за исключением элементов, кратных пяти. }

Function SumQadro(a:array [1..Maxcount] of real;Ncount:integer):real;
var sum:real;
    x:integer;
begin
   sum:=0;
   for x:=1 to ncount do
     if (x mod 5) = 0 then sum:=sum+sqr(a[x]);
     SumQadro:=sum;
end;




  begin

  end.
п.с. на нетбуке реально не удобно писать. завтра с нормального компа дополню пост
задания на pascal/delphi ICQ 368254335
Tel +79177425326 mail denis-naymov1985(at)mail.ru login skype denis.new.skype

Последний раз редактировалось denisbrain; 16.05.2012 в 20:45.
denisbrain вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Задачи на Дельфи: одна на обработку матрицы и две на обработку строк ali-4ka Помощь студентам 6 21.03.2012 14:28
задачи на обработку массива (Delphi) Евгений77777 Помощь студентам 2 15.02.2012 23:31
Free Pascal. Решение задач на обработку массива Livelavalive Помощь студентам 0 01.11.2011 16:39
задачи: на двумерные массивы,обработку строк,обработку текстовых файлов. (Паскаль) Yaro Помощь студентам 2 12.11.2009 12:55
Помогите решить две задачи на матрицы (Turbo Pascal) cinik Помощь студентам 1 23.05.2009 23:37