Программа для построения БЛОК-СХЕМ!!!
Вычислить среднегармоническое значение элементов массива - Бесплатно сделаю блок-схему
Меню сайта

Форма входа

Друзья сайта

  • Программа Ростовщик 1.04

  • Программа расчета кредита

  • Курсовые по информатике

  • Старый, но живой ГОСТ для Блок-Схем

  • Сервис заполнения бланков аттестатов

  • Библиотека VBA для сервиса AntiGate.com

  • Статистика

    Locations of visitors to this page

    Приветствую Вас, Гость · RSS 17.05.2024, 12:11

    [ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
    • Страница 1 из 1
    • 1
    Модератор форума: diamFC  
    Бесплатно сделаю блок-схему » Блок-схемы по просьбам » Главное - ВЕРИТЬ (© Didme) » Вычислить среднегармоническое значение элементов массива (Вычислить среднегармоническое значение элементов массива)
    Вычислить среднегармоническое значение элементов массива
    diamFCДата: Четверг, 26.05.2011, 10:27 | Сообщение # 1
    Полковник
    Группа: Администраторы
    Сообщений: 207
    Репутация: 11
    Статус: Offline
    1) Вычислить значения 34 эл-тов одномерного целочисленного массива W в интервале (-10,10) с использованием генератора случайных чисел.
    2) Вычислить среднегармоническое значение нечетных по значению элементов второй четверти массива.
    3) определить наименьший по модулю элемент среди ненулевых элементов всего массива.
    4) Упорядочить отрицательные элементы первой четверти массива по убыванию модулей обратных значений.

    Code

    program N4;
    uses crt;
    type mas = array[1..34] of integer;  определяем тип: массив из 34 эл-тов
    var  w:  mas;   объявляем переменные. массив
          z4: array[1..8] of integer;    массив из 8 эл-тов
          i, j, n, tmp, minW, minI: integer;
          sum : real;
          sort : boolean;

    begin
      clrscr;

      writeln('Zadacha 1');
        randomize;  инициализируем датчик случайных чисел
        n := 0;
        for i := 1 to 34 do  в цикле от 1 до 34 выполняем
        begin
          w[i] := random(20) - 10;    значение массива – случайное число от -10 до 10
          write(w[i], '; ');  выводим на экран
        end;   конец цикла
      writeln;   перевод строки
      writeln;

      writeln('Zadacha 2:');
      sum := 0;
      n := 0;
        for i := 9 to 17 do begin    цикл
          if i mod 2 = 1 then begin    если I – нечетное, то
            if w[i] <> 0 then sum := sum + 1/w[i]; если Эл-т<>0,то суммируем его обратное значение
            n := n + 1;
            write ('w[', i, '] = ', w[i], '; ')
          end;     конец если
        end;    конец цикла
        writeln;
        writeln('srednegarm = ', 1/((1/n)*sum):5:2); вывод среднегарм.значения
      writeln;

      writeln('Zadacha 3:');
        minW := 10;    задаем минимально значении =максимально возможному в массиве
        for i := 1 to 34 do begin цикл по всему массиву
          if (w[i] <> 0) and (minW > abs(w[i])) then begin если эл-т<>0 и меньше чем текущее минимально значение, то
             minW := abs(w[i]);    задаем новое мин. значение
             minI := i;  запоминаем номер Эл-та
          end;   конец если
        end;  конец цикла
      writeln('minimalnyi po modulu - el-t(',minI, ') = ', minW);
      writeln;

      writeln('Zadacha 4:');
      sort := false;    признак сортировки = ложь (массив не отсортирован)
      j := 0;
        for i := 1 to 8 do begin    цикл по первым 8 эл-там исходного массива
          write(w[i], '; ');
          if w[i] < 0 then begin    если Эл-т<0, то заполняем массив z4 этим Эл-том
            j := j + 1;
            z4[j] := w[i];
          end;
        end;
        writeln;

        if j = 0 then    если j=0 значит отриц-х Эл-тов нет
          writeln('Elementov < 0 net!')
        else begin    иначе
          while sort = false do begin    цикл, пока массив не отсортирован
            sort := true;  вначале считаем, что массив отсортирован
            for i := 1 to j - 1 do begin     в цикле по массиву выполняем проверку
              if abs(1/z4[i]) < abs(1/z4[i+1]) then если обратное знач-е Эл-та меньше, чем у следующего, то  
        begin  
                tmp := z4[i];  меняем
                z4[i] := z4[i+1];   их
                z4[i+1] := tmp;    местами
                sort := false;  считаем массив неотсортированным
              end;    конец если
            end;    конец цикла
          end;    конец цикла
        end;    конец если
        for i := 1 to j do begin    в цикле выводим отсортированный массив на экран
            write(z4[i], '; ');
        end;

      writeln;
      readkey;    ждем нажатия клавиши
    end.
     
    diamFCДата: Четверг, 26.05.2011, 10:32 | Сообщение # 2
    Полковник
    Группа: Администраторы
    Сообщений: 207
    Репутация: 11
    Статус: Offline
    Прикрепления: 3850656.jpg (56.8 Kb) · N4.PAS.xls (25.5 Kb) · N4.PAS.xls.doc (49.0 Kb)
     
    Бесплатно сделаю блок-схему » Блок-схемы по просьбам » Главное - ВЕРИТЬ (© Didme) » Вычислить среднегармоническое значение элементов массива (Вычислить среднегармоническое значение элементов массива)
    • Страница 1 из 1
    • 1
    Поиск:

    Copyright MyCorp © 2024
    Конструктор сайтов - uCoz