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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 02.12.2012, 17:34   #1
lolwto
Пользователь
 
Регистрация: 02.12.2012
Сообщений: 50
По умолчанию Обработка одномерных массивов

• Нахождение в массиве минимального элемента среди положительных и его номера в массиве.
• Нахождение произведения элементов больших 1 но меньших 5.
• Нахождение среднего арифметического значения всех элементов массива.
• Расположить массив в порядке убывания

помогите......
lolwto вне форума Ответить с цитированием
Старый 02.12.2012, 18:28   #2
Desha
Форумчанин
 
Аватар для Desha
 
Регистрация: 06.04.2009
Сообщений: 124
По умолчанию

А какие -нибудь данные о массиве? Мощность, тип? Одномерный или более?
Desha вне форума Ответить с цитированием
Старый 02.12.2012, 20:26   #3
lolwto
Пользователь
 
Регистрация: 02.12.2012
Сообщений: 50
По умолчанию

ну как бы только одномерный массив. Темку читайте
lolwto вне форума Ответить с цитированием
Старый 02.12.2012, 20:36   #4
Desha
Форумчанин
 
Аватар для Desha
 
Регистрация: 06.04.2009
Сообщений: 124
По умолчанию

Алгоритм таков поиска минимума:
1. заполнить массив
2. найти первый не отрицательный элемент (и не равный нулю) и условно принять его за минимальный. В отдельную переменную запомнить его номер
3. в цикле сравнить все элементы массива и, если текущий элемент меньше минимального, то изменить минимальный на текущий. Не забыть так же изменить номер в отдельной переменной

Попробуй, покажи, что получилось. Далее посмотрим
Desha вне форума Ответить с цитированием
Старый 02.12.2012, 21:51   #5
lolwto
Пользователь
 
Регистрация: 02.12.2012
Сообщений: 50
По умолчанию

Код:
var a:array [1..100] of real;
    max,minn,boln,ravn:real;
    i,index,valof:integer;

    procedure Col;
     begin
      for i:=1 to index do
       begin
        if a[i]>0 then boln:=boln+1;
        if a[i]<0 then minn:=minn+1;
        if a[i]=0 then ravn:=ravn+1;
       end;
       Writeln(boln,' elem>0; ',minn,' elem<0; ',ravn,' elem=0');
     end;

     procedure Sort;
      begin
        for i:=1 to index-1 do
       begin
       if a[i]>a[i+1] then
      begin
        max:=a[i];
        a[i]:=a[i+1];
        a[i+1]:=max;
      end;
    end;
    for i:=1 to index do
     Write('a[',i,'] = ',a[i],' ');
      end;
      /////
      procedure MinMax;
       var max,min:real;
       begin
          max:=-(maxint);
          min:=maxint;
         for i:=1 to index do
          begin
            if a[i]>max then max:=a[i];
            if a[i]<min then min:=a[i];
          end;
          Writeln('Summa=',max+min);
       end;

       procedure ProcEl;
       var gran,gran2:real;
        begin
          Writeln('Neobhodimaya granitsa'); Readln(gran);
          gran2:=gran/10;
          for i:=1 to index do
           begin
            if (a[i]<=gran+gran2) and(a[i]>=gran-gran2) then
              Writeln('est takoi: ',a[i]);
           end;
        end;

 begin
  Writeln('Col. elem.'); Readln(index);
  for i:=1 to index do
   begin
    Write('elem. ',i,' = '); Readln(a[i]);
   end;
    Writeln('1 - esli poschitat colichestvo; 2 - symma max i min; 3 - sort; 4 - pechat');
    Readln(valof);
    case valof of
    1: Col;
    2: MinMax;
    3: Sort;
    4: ProcEl;
    end;
  end.

Последний раз редактировалось ACE Valery; 02.12.2012 в 22:44.
lolwto вне форума Ответить с цитированием
Старый 02.12.2012, 22:00   #6
Desha
Форумчанин
 
Аватар для Desha
 
Регистрация: 06.04.2009
Сообщений: 124
По умолчанию

Не совсем вижу связь между условием задачи и кодом, который Вы привели. Вы можете использовать функцию сортировки. И то она сортирует в порядке возрастания (на сколько я вижу).
Desha вне форума Ответить с цитированием
Старый 02.12.2012, 22:16   #7
lolwto
Пользователь
 
Регистрация: 02.12.2012
Сообщений: 50
По умолчанию

вы поможете?
lolwto вне форума Ответить с цитированием
Старый 02.12.2012, 22:18   #8
Mad_Cat
Made In USSR!
Старожил
 
Аватар для Mad_Cat
 
Регистрация: 01.09.2010
Сообщений: 3,657
По умолчанию

Обязательно. Контакты в профиле-недорого!
"...В жизни я встречал друзей и врагов.В жизни много всего перевидал.Солнце тело мое жгло, ветер волосы трепал,но я смысла жизни так и не узнал..."
(c) Юрий Клинских aka "Хой"
Mad_Cat вне форума Ответить с цитированием
Старый 02.12.2012, 22:30   #9
Desha
Форумчанин
 
Аватар для Desha
 
Регистрация: 06.04.2009
Сообщений: 124
По умолчанию

Вижу в данном случае "поможете" это "напишете за меня"))) А так хотелось именно объяснить как это делается...
Код:
const n=20; //кол-во элементов
var a:array [1..n] of real; //массив
min:real; //минимальный элемент
i:integer; //счетчик
k:integer; //номер мин элемента
BEGIN
writeln('Дан массив');
randomize;
//заполняем массив случайными числами
for i:=1 to n do
   begin
     a[i]:=random(101); //определяем чему равен элемент
     write(a[i], '   ');     //выводим его
  end;
//поиск первого положительного элемента
for i:=1 to n do 
      if a[i]>0 then  //если положителен
          begin
             min:=a[i];  //условно берем что он мин
             k:=i;         //запоминаем его номер
             break;      //выходим из цикла. Это для того чтобы лишние операции не выполнять
          end;
//вот теперь поиск настоящего минимального 
for i:=1 to n do
  if (a[i]<min) and (a[i]>0) then //если он меньше принятого мин и при этом положительный 
     begin
      min:=a[i]; //меняем минимальный 
      k:=i;        //запоминаем номер
     end;
writeln;
writeln('Минимальный элемент = ', min, ' его номер  = ',k);
END.
как один из более легких вариантов
Desha вне форума Ответить с цитированием
Старый 03.12.2012, 08:08   #10
Politehnik
 
Регистрация: 03.12.2012
Сообщений: 4
По умолчанию

Дан целочисленный массив А[1..4, 1..5]. Определить номера тех строк массива, в которых есть хотя бы один элемент, равный 10. Заполнение массива осуществить с клавиатуры.
Ребят, очень надо, вопрос зачета-незачета, кто сможет помогите, программа нужна в паскале, желательно упрощенный вариант, кто сможет, иначе препод просто завалит вопросами
Politehnik вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Обработка одномерных массивов Катя369919407 Помощь студентам 2 20.01.2012 13:59
Обработка одномерных массивов vasya9 Помощь студентам 0 07.11.2011 22:02
Обработка одномерных массивов Alexxxxxx Помощь студентам 3 22.10.2011 22:10
Обработка одномерных массивов Volume Помощь студентам 3 18.05.2011 19:38
обработка одномерных массивов felmor Помощь студентам 16 05.02.2009 19:22