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

Форма входа

Друзья сайта

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

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

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

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

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

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

  • Статистика

    Locations of visitors to this page

    Приветствую Вас, Гость · RSS 03.05.2024, 02:55

    [ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
    • Страница 1 из 1
    • 1
    Модератор форума: diamFC  
    Бесплатно сделаю блок-схему » Блок-схемы по просьбам » Главное - ВЕРИТЬ (© Didme) » Нужно построить блок-схему
    Нужно построить блок-схему
    KrossichДата: Среда, 01.07.2015, 17:14 | Сообщение # 1
    Рядовой
    Группа: Пользователи
    Сообщений: 3
    Репутация: 0
    Статус: Offline
    Постановка задачи: Дана матрица А(6,6). Определить в матрице A максимальный элемент MAX. Создать овую матрицу B, где B(x,y) = MAX – A(x,y). Вывести исходную матрицу A, и рядом с ней результатную матрицу B.

    Листинг:

    type
      mtr = array of array of integer; //через type чтобы не писать объявлениемассивов дважды
     
    function changesize(num : integer) : integer;
    // изменение значения параметра num
    begin
      var key : char;
      
    writeln('Текущая размерность матрицы равна ',num,'x',num,'.
    Изменить?(y/n)');
      
    readln(key);
       if (key = 'y') then begin
         writeln('Введите новую размерность матрицы (целое числострого больше нуля).');
         repeat
         readln(num);
        
    until num>0;
        
    writeln('Размерность матрицы изменена на ',num,'x',num,'.');
       end;
       result
    := num;
    end;
     
    function isran (): char;
    begin
      var ran : char;
      writeln('Заполнить массив автоматически? (y/n)
    ');
     
    read(ran);
      result
    := ran;
    end;
     
    procedure line ();
    begin
      write('   '); //отделим матрицы друг от друга
      write('|');
    end;
     
    begin
     var a, b : mtr;
      varmax, num, i, j, k, mlen : integer;
      var key, ran : char;
     
      num := 6; //начальная размерность матрицы
      repeat
     
       num := changesize(num);
     
       setlength(a, num + 1); //задание
    длины внешним динамическим массивам
       for i := 1 to (num) do setlength(a, num + 1); //заданиедлины внутренним динамическим массивам
       setlength(b, num + 1);
       fori := 1 to (num) dosetlength(b, num + 1);
      
       if(isran() = 'y') thenbegin
         randomize;
         
    for i := 1 to numdo
            for j := 1 tonum do begin
            a[i,j] := random (1000)- 500;
             if (i = 1) and (j = 1) then max := a[1,1]; //если введен самый первый элемент матрицы, то онобъявляется максимальным
             if (a[i,j] > max) then max := a[i,j]; //если введенный элемент больше максимального, тоэтот элемент становится новым максимальным
          end;
       end
      else begin
       //
       fori := 1 to numdo
        for j := 1 tonum do begin
          writeln('Введите ',(j + (i - 1) * num), '-ый член
    матрицы. Осталось
    ввести : ',
             (num * num + 1 - (j + (i - 1) * num))); //предложение ввести следующее
    число и вывод оставшегося количества вводимых чисел
           repeat
           readln(a[i,j]); //вводчисла
          
    until (a[i,j] < 32767) and (a[i,j] > -32768);
          
    if (i = 1) and (j = 1) then max := a[1,1]; //если введен самый первый элемент матрицы, то онобъявляется максимальным
           if (a[i,j] > max) then max := a[i,j]; //если введенный элемент больше максимального, тоэтот элемент становится новым максимальным
         end;
       end;
       writeln('Все данные успешно введены.');
       mlen := max.ToString.Length + 1; //получение
    длины максимального числа. т.е. если max = 256, то mlen будет равно 3. пригодится для
    постройки таблицы
       for i:= 1 to num do
        for j := 1 tonum do b[i,j] := max - a[i,j]; //формированиенового массива
        

       for k := 1 to ((mlen + 2) * num + 1) do write('-'); //рисуемполосу для отделения членов матрицы друг от друга (для левой матрицы)
       write('   '); //отделим матрицы друг от друга
       for k := 1 to ((mlen + 2) * num + 1) do write('-'); //рисуемполосу для отделения членов матрицы друг от друга (для второй матрицы)
       writeln();
     
       fori := 1 to num dobegin
        write('|');
       
         for j := 1 to num do begin // вывод одной строкирезультатной матрицы
           write(b[i,j]
    : (mlen + 1), '|');
        
    end;
       
         write('   '); //отделим матрицы друг от друга
         write('|');
       
         for j := 1 to num do begin // вывод одной строки исходной матрицы
           write(a[i,j]
    : (mlen + 1), '|');
        
    end;
       
        
    write('|');
       
        
    writeln();
        
    for k := 1to ((mlen + 2) * num + 1) do write('-'); //рисуемполосу для отделения членов матрицы друг от друга
         write('   '); //отделим матрицы друг от друга
         for k := 1 to ((mlen + 2) * num + 1) do write('-'); //рисуемполосу для отделения членов матрицы друг от друга (для второй матрицы)
         writeln();
       end;
      
    key := ' ';
      
    writeln('Совершить еще одну операцию?(y/n)');
       readln(key);
     until(key <> 'y');
    end
    .


    Сообщение отредактировал Krossich - Среда, 01.07.2015, 17:15
     
    diamFCДата: Среда, 01.07.2015, 20:04 | Сообщение # 2
    Полковник
    Группа: Администраторы
    Сообщений: 207
    Репутация: 11
    Статус: Offline
    то что выложено - не компилируется. Приложите файлом.
     
    KrossichДата: Четверг, 02.07.2015, 13:02 | Сообщение # 3
    Рядовой
    Группа: Пользователи
    Сообщений: 3
    Репутация: 0
    Статус: Offline
    https://yadi.sk/d/RC1W2dU3hcpou
     
    diamFCДата: Четверг, 02.07.2015, 15:58 | Сообщение # 4
    Полковник
    Группа: Администраторы
    Сообщений: 207
    Репутация: 11
    Статус: Offline
    В архиве блок-схема
    Прикрепления: 9032733.zip (237.5 Kb)
     
    Бесплатно сделаю блок-схему » Блок-схемы по просьбам » Главное - ВЕРИТЬ (© Didme) » Нужно построить блок-схему
    • Страница 1 из 1
    • 1
    Поиск:

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