Сгенерировать случайные числа и буквы

Задача

Сгенерировать случайные целое число, вещественное число, букву в диапазонах, которые вводит пользователь.

Решение

Описание переменных: 

  • min_i, max_i - минимальная и максимальная границы диапазона для целого числа;
  • n_i - случайное целое число;
  • min_f, max_f - минимальная и максимальная границы диапазона для вещественного числа;
  • n_f - случайное вещественное число;
  • first_c, last_c - первый и последний символ диапазона, в котором должен быть сгенерирован случайный символ;
  • min_c, max_c - коды-числа, соответствующие указанным символам;
  • n_c - случайное число, которое будет переведено в символ по таблице ASCII.

Программа на языке Паскаль: 

var
    min_i, max_i, n_i: integer;
    min_f, max_f, n_f: real;
    first_c, last_c: char;
    min_c, max_c, n_c: byte;    
begin
    randomize;
    write('Minimum integer: ');
    readln(min_i);
    write('Maximum integer: ');
    readln(max_i);
    n_i := random(max_i-min_i+1) + min_i;
    writeln(n_i);
 
    write('Minimum float: ');
    readln(min_f);
    write('Maximum float: ');
    readln(max_f);
    n_f := random() * (max_f-min_f) + min_f;
    writeln(n_f:5:2);
 
    write('First char: ');
    readln(first_c);
    write('Last char: ');
    readln(last_c);
    min_c := ord(first_c);
    max_c := ord(last_c);
    n_c := random(max_c-min_c+1) + min_c;
    writeln(chr(n_c));
end.

Пример выполнения программы:

Minimum integer: -100
Maximum integer: 100
-46
Minimum float: 0.23
Maximum float: 0.85
 0.53
First char: k   
Last char: q
p

Тема

Линейные алгоритмы

Уровень

Комбинированные задачи

Добавить комментарий