Сформировать одномерный массив, заполнив его случайными числами - Free Pascal

Узнай цену своей работы

Формулировка задачи:

Итак, задача: Сформировать одномерный массив, заполнив его случайными числами латинского алфавита, отсортировав по правилу: сначала идут строчные гласные, затем прописные согласные, потом строчные согласные, а после прописные гласные. PS. Строчные буквы - маленькие буквы, прописные - большие (заглавные) Очень надеюсь на вашу помощь!

Решение задачи: «Сформировать одномерный массив, заполнив его случайными числами»

textual
Листинг программы
var             
    a :array[1 .. 1000] of char;
    d :array[0 .. 256] of longint;
    n, i, j :longint;
    c :char;
 
function get(x :char) :longint;
begin
    if (x in ['a' .. 'z']) then begin
        if (x in ['a', 'e', 'o', 'i', 'y', 'u']) then
            get := 4
        else
            get := 2;
    end
    else begin
        if (x in ['A', 'E', 'O', 'I', 'Y', 'U']) then
            get := 1
        else
            get := 3;           
    end;
end;
 
begin
    read(n);
    randomize;
    for i := 1 to n do begin
        a[i] := char(random(26) + ord('a'));
        if (random(2) = 1) then 
            a[i] := upcase(a[i]);
        write(a[i]);
    end;
    writeln();
 
    for i := 1 to n do
        for j := 1 to n - 1 do 
            if (get(a[j]) < get(a[j + 1])) then begin
                c := a[j];
                a[j] := a[j + 1];
                a[j + 1] := c;
            end;
                                             
    for i := 1 to n do
        write(a[i]);
end.

Объяснение кода листинга программы

  1. В коде используется язык программирования Free Pascal.
  2. Задачей программы является формирование одномерного массива, заполнение его случайными числами и сортировка полученного массива.
  3. В первой части кода объявляются переменные: a — массив из 1000 символов; d — массив из 256 длинных целых чисел; n, i, j — длинные целые числа; c — символ.
  4. Функция get(x:char) возвращает число, определяющее позицию символа x в алфавите.
  5. В цикле происходит заполнение массива a случайными символами из алфавита.
  6. В каждой итерации цикла выполняется проверка, является ли текущий символ 'a' или 'A'. Если это так, то к текущему символу добавляется 4, если нет — 2.
  7. В цикле выполняется сортировка массива a методом пузырька.
  8. В последней части кода выводится отсортированный массив a.

Оцени полезность:

10   голосов , оценка 4.2 из 5
Похожие ответы