Noketevaz 3 ноября 2019 в 02:13

Сделайте 2 и 3!!! пжл

Задания 2 и 3.

ОТДЕЛ Задание2+;
ИСПОЛЬЗУЕТ Матем ИЗ "...ОтделыЧисла", Вывод ИЗ "...ОтделыОбмен", Приём;

ПЕР
  Массив: РЯД 3, 4 ИЗ ЦЕЛ;
  сч1, сч2: ЦЕЛ;

УКАЗ
  ОТ сч1 := 0 ДО 2 ВЫП
    ОТ сч2 := 0 ДО 3 ВЫП
      Массив[сч1, сч2] := Приём.Число();
      Вывод.Цепь(" ")
    КОН;
    Вывод.Цепь("^")
  КОН;

  ОТ сч1 := 0 ДО 2 ВЫП
    ОТ сч2 := 0 ДО 3 ВЫП
      Вывод.ЧЦел("8d ", Массив[сч1, сч2], 0, 0, 0)
    КОН;
    Вывод.Цепь("^")
  КОН;

КОН Задание2.

ОТДЕЛ Задание3+;

ИСПОЛЬЗУЕТ Матем ИЗ "...ОтделыЧисла", Вывод ИЗ "...ОтделыОбмен";

ПЕР
  Массив: РЯД 3, 4 ИЗ ВЕЩ;
  сч1, сч2: ЦЕЛ;

УКАЗ
  ОТ сч1 := 0 ДО 2 ВЫП
    ОТ сч2 := 0 ДО 3 ВЫП
      Массив[сч1, сч2] := УЗК(Матем.случ())
    КОН
  КОН;
  ОТ сч1 := 0 ДО 2 ВЫП
    ОТ сч2 := 0 ДО 3 ВЫП
      Вывод.ЧВещ(".2f ", Массив[сч1, сч2], 0, 0, 0)
    КОН;
    Вывод.Цепь("^")
  КОН

КОН Задание3.

Пример вывода 3-его задания:

D:РазработкиГлаголПриложенияСвоиgt;Задание3
0,32 0,48 0,42 0,73
0,92 0,33 0,00 0,04
0,24 0,59 0,62 0,95

Цитирую код отдела "Приём", раз его ещё пока в стандартный выпуск среды разработки не включили, но, по-моему, это лишнее, алгоритм понятен и так. Задачи Приём.Строка() и Приём.Ждать() убрал, они тут не используются, а текста много.

ОТДЕЛ Приём;   ИСПОЛЬЗУЕТ   ОС ИЗ "...ОтделыОбмен",   КОС ИЗ "...ОтделыОбмен",   Ввод ИЗ "...ОтделыОбмен",   Вывод ИЗ "...ОтделыОбмен",   Знак ИЗ "...ОтделыИное";   ЗАДАЧА Число-(): ЦЕЛ; (* Целое число *) ПЕР   отКлавиш: Ввод.ОтКлавиш;   отМышки: Ввод.ОтМышки;   Счётчик, сч: ЦЕЛ;   Результат: ЦЕЛ;   Буфер: ДОСТУП К РЯД ИЗ ЗНАК;   Отрицательное: КЛЮЧ; УКАЗ   Результат := 0; Счётчик := 0; Отрицательное := ОТКЛ;   КОЛЬЦО     ЕСЛИ КОС.Опрос(отКлавиш, отМышки) = Ввод.клавиши ТО       ЕСЛИ отКлавиш.знак = 0DX ТО         ЕСЛИ Отрицательное ТО ВОЗВРАТ -Результат ИНАЧЕ ВОЗВРАТ Результат КОН       АЕСЛИ отКлавиш.код = 08H ТО         ЕСЛИ Счётчик gt; 0 ТО           Результат := Результат ДЕЛИТЬ 10; Вывод.ЗнакЦепи(отКлавиш.знак); Вывод.ЗнакЦепи(" "); Вывод.ЗнакЦепи(отКлавиш.знак); УМЕНЬШИТЬ(Счётчик)         АЕСЛИ Отрицательное ТО Отрицательное := ОТКЛ;           Вывод.ЗнакЦепи(отКлавиш.знак); Вывод.ЗнакЦепи(" "); Вывод.ЗнакЦепи(отКлавиш.знак)         КОН       АЕСЛИ (отКлавиш.код = 2DH) И (ОС.РазмерЦепочкиОбменника() # 0) ТО         ПОКА Счётчик gt; 0 ВЫП УМЕНЬШИТЬ(Счётчик); Вывод.ЗнакЦепи(8X); Вывод.ЗнакЦепи(" "); Вывод.ЗнакЦепи(8X)         КОН;         ЕСЛИ Отрицательное ТО Отрицательное := ОТКЛ; Вывод.ЗнакЦепи(8X); Вывод.ЗнакЦепи(" "); Вывод.ЗнакЦепи(8X)         КОН;         Результат := 0;         СОЗДАТЬ(Буфер, ОС.РазмерЦепочкиОбменника()); ОС.ЦепочкуИзОбменника(Буфер^);         ЕСЛИ (Буфер[0] gt;= "0") И (Буфер[0] lt;= "9") ТО           Результат := Результат * 10 + (ВЦЕЛ(Буфер[0]) - ВЦЕЛ("0")); Вывод.ЗнакЦепи(Буфер[0]); УВЕЛИЧИТЬ(Счётчик)         АЕСЛИ Буфер[0] = "-" ТО Вывод.ЗнакЦепи("-"); Отрицательное := ВКЛ КОН;         ОТ сч := 1 ДО РАЗМЕР(Буфер^)-1 ВЫП           ЕСЛИ (Буфер[сч] gt;= "0") И (Буфер[сч] lt;= "9") ТО             Результат := Результат * 10 + (ВЦЕЛ(Буфер[сч]) - ВЦЕЛ("0")); Вывод.ЗнакЦепи(Буфер[сч]); УВЕЛИЧИТЬ(Счётчик)           КОН         КОН;         Буфер := ПУСТО       АЕСЛИ (отКлавиш.знак = "-") И (НЕ Отрицательное) ТО         ЕСЛИ Результат = 0 ТО Отрицательное := ВКЛ; Вывод.ЗнакЦепи("-") КОН       АЕСЛИ отКлавиш.знак = 0X ТО       АЕСЛИ (Результат lt; МАКС(ЦЕЛ) ДЕЛИТЬ 10) И ((отКлавиш.знак gt;= "0") И (отКлавиш.знак lt;= "9")) ТО         Результат := Результат * 10 + (ВЦЕЛ(отКлавиш.знак) - ВЦЕЛ("0")); Вывод.ЗнакЦепи(отКлавиш.знак); УВЕЛИЧИТЬ(Счётчик)       КОН     ИНАЧЕ ОС.Спать(50) КОН   КОН КОН Число;   КОН Приём.
Компьютеры и вычисления
Для комментирования необходимо зарегистрироваться на сайте