Присоединиться

11 класс·высокий уровень

Дан вещественный массив из 40 элементов. Элементы массива могут

Условие

Дан вещественный массив из 40 элементов. Элементы массива могут принимать произвольные значения. Опишите на русском языке или на одном из языков программирования алгоритм, который находит и выводит минимальный положительный элемент массива или сообщение, что такого элемента нет.

Исходные данные объявлены так, как показано ниже. Запрещается использовать переменные, не описанные ниже, но разрешается не использовать часть из них.

ПаскальБейсик
const N = 40;vara: array [1..N] of real;i, j: integer;min: real;beginfor i := 1 to N doreadln(a[i]);...end.N = 40 DIM A(N) AS REAL DIM I, J AS INTEGER DIM MIN AS REAL FOR I = 1 TO N INPUT A(I) NEXT I... END
Си++Алгоритмический язык
#include <iostream>using namespace std; #define N 40 int main(void) {float a[N]; int i, j; float min;for (i = 0; i < N; i++) cin >> a[i];}алг начцел N = 40 вещтаб а[1:N] цел i / j вещ MINнц для i от 1 до N ввод a[i]кц...кон
Естественный язык
Объявляем массив А из 40 элементов. Объявляем целочисленные переменные I, J и вещественную переменную MIN. В цикле от 1 до 40 вводим элементы массива А с 1-го по 40-й....
Python
# допускается также использовать# целочисленную переменную j#и вещественную переменную mina = []n = 40for i in range(0, n): a.append(float(input()))

В качестве ответа вам необходимо привести фрагмент программы (или описание алгоритма на естественном языке), который должен находиться на месте многоточия. Вы можете записать решение также на другом языке программирования (укажите название и используемую версию языка программирования, например Borland Pascal 7.

  1. или в виде блок-схемы. В этом случае вы должны использовать те же самые исходные данные и переменные, какие были предложены в условии (например, в образце, записанном на естественном языке).

Формат задания

Развёрнутый ответ: короткого ответа здесь нет — оценивается само рассуждение. Разбор откроется после входа.

Решение по шагам

  1. Как рассуждать

    Решение. ПАСКАЛЬ | БЕЙСИК | j := 1;while (j < N) and (a[j] <= 0)doj := j + 1;if a[j] <=0 thenwriteln('нет таких')elsebeginfor i : = j to N doif (a[i] >

Осталось ещё 3 шага

  1. and(a[i] < a[j])then j : =…

  2. | or(a[i] < a[j]) thenj := i;if j…

  3. В цикле пока J меньше 40 и пока J-й элемент…

Получить полное решение

Бесплатно · займёт минуту

Другие задачи по теме «Алгоритмы обработки массивов»