М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
Angelika200614
Angelika200614
07.01.2020 19:21 •  Информатика

1. Используя данные таблицы Блюдо

Борщ

Котлета

Каша

Чай

35

40

20

3

Цена

отсортировать блюда по возрастанию цены. Вывести отсортированный вариант списка блюд. 2. Имеется список учеников и результаты трех тестов ( от 0 до 100). Определить средний каждого ученика по трем тестам, вывести список учеников по убыванию

среднего .

3. Известны данные о количестве мальчиков и девочек в нескольких классах.

Отсортировать названия классов по возрастанию процента мальчиков, определить количество классов, к которых мальчиков больше, чем девочек и вывести названия этих классов отдельно

4. Решить задачу, связанную с оценкой экономической деятельности группы предприятий

на основе известных данных:

Название предприятий

• Плановый обьем розничного товарооборота

• Фактический объем розничного товарооборота

Требуется определить:

1) процент выполнения плана каждым предприятием

ii) количество предприятий, недовыполнивших план на 10% и более

ill) наименьший плановый товарооборот IV) упорядочить предприятия по убыванию планового товарооборота.

👇
Открыть все ответы
Ответ:
elinazayka
elinazayka
07.01.2020
const
    handsfree = false;

var
    a: array[1..100] of real;
    i, n: integer;
    sum_pos, sum_neg: real;
    k_pos, k_neg: integer;

begin
    {ввод массива}
    if handsfree then
        n := random(20) + 5
    else begin
        write('n = ');
        readln(n);
    end;
    
    writeln('Данные массива:');
    for i := 1 to n do
    begin
        if handsfree then begin
            a[i] := random(100) - 50;
            write(a[i], ' ');
        end
        else readln(a[i]);
    end;
    writeln();
    
    {подсчет}
    sum_pos := 0;
    k_pos := 0;
    sum_neg := 0;
    k_neg := 0;
    for i := 1 to n do
    begin
        if a[i] > 0 then
        begin
            sum_pos := sum_pos + a[i];
            k_pos := k_pos + 1;
        end;
        
        if a[i] < 0 then
        begin
            sum_neg := sum_neg + a[i];
            k_neg := k_neg + 1;
        end;
    end;
    writeln('average (positives) = ', sum_pos / k_pos);
    writeln('average (negatives) = ', sum_neg / k_neg);
end.
4,7(46 оценок)
Ответ:
katerinamorozo2
katerinamorozo2
07.01.2020

10

Объяснение:

Смотри вложение. Клетки: [B], [S] робот пройдёт более 2-х раз -> эти клетки не подойдут под условие. Почему? Потому что каждый цикл робот смещается на 3 клетки влево – через [B], в каждом цикле, робот уже проходит 2 раза, а в следующем цикле он делает это ещё раз, тем самым проваливая условие для данной клетки; [S] – аналогично, поскольку робот, в каждом цикле, пересечёт данную клетку, выходя из клетки [F] в клетку [G].

Для простоты, приведу список клеток из 2 цикла:

[G] станет [S];

[A] станет [B];

[C] станет [D];

[B] станет [E];

[S] станет [F].

Во втором цикле [G] левее на 3 клетки, а её позицию из 1 цикла, теперь, занимает клетка [S].

Нетрудно понять, что ровно 2 раза робот пройдёт только по клетке [C] – [C] станет [D] и больше не будет пройдена роботом.

Остальные клетки робот пройдёт более или менее 2 раз.


Робот движется по клетчатому полю в соответствии с заданной программой. для записи программы использ
4,6(76 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ