Непонятно, что за "надписи".
Предположим, что
1. "бабушка попросила"
2. "взяла лукошко"
3. "подошла к кусту"
4. "сорвала ягоду"
5. "сварили варенье"
тогда логика задачи будет следующей
бабушка попросила
Если Маша согласилась тогда
взяла лукошко
подошла к кусту
Если куст с ягодами Тогда
Пока (на кусте есть ягоды) и (лукошко пустое) Цикл
сорвала ягоду
КонецЦикла
КонецЕсли
сварили варенье
КонецЕсли
В принципе, если несколько кустов, нужен цикл обхода по кустам пока не наполнится лукошко.
Реляционная база данных – это набор данных с предопределенными связями между ними. Эти данные организованны в виде набора таблиц, состоящих из столбцов и строк. В таблицах хранится информация об объектах, представленных в базе данных. В каждом столбце таблицы хранится определенный тип данных, в каждой ячейке – значение атрибута. Каждая стока таблицы представляет собой набор связанных значений, относящихся к одному объекту или сущности. Каждая строка в таблице может быть помечена уникальным идентификатором, называемым первичным ключом, а строки из нескольких таблиц могут быть связаны с внешних ключей. К этим данным можно получить доступ многими и при этом реорганизовывать таблицы БД не требуется.
Объяснение:
var
s: array[1..10] of real = (244.1, 357, 132, 43.1, 504.8, 301.2, 312.7, 92.0, 337, 551); // площадь
gn: array[1..10] of real; // густота населения
k: array[1..10] of real = (58100, 81200, 10300, 5190, 39100, 57200, 38500, 9800, 5060, 57800); // количество
n: array[1..10] of string = ('Великобритания', 'Германия', 'Греция', 'Дания', 'Испания', 'Италия', 'Польша', 'Португалия', 'Финляндия', 'Франция');
i, j: integer;
x: real;
r: string;
begin
for i := 1 to 10 do gn[i] := k[i] / s[i];
for i := 1 to 10 do
for j := i + 1 to 10 do
if gn[i] > gn[j] then
begin
x := gn[j];gn[j] := gn[i];gn[i] := x;
r := n[j];n[j] := n[i];n[i] := r;
end;
for i := 1 to 10 do writeln(n[i], ' ', gn[i]:0:2);
end.