Как сделать, чтобы random работал в нескольких диапазонах? - C (СИ)

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

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

Нужно отобразить в одном массиве цифры и буквы в случайном порядке и потом использывать группировку элементов массива. Уже на первом этапе задачи столкнулся с проблемой. Я могу отобразить символы в массиве но только в одном диапазоне (Ascii)а надо в нескольких да еще в один массив (только буквы и цифры)
Листинг программы
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. int main()
  4. {
  5. int i;
  6. char mas[100];
  7. for(i=0;i<100;i=i++){
  8. mas[ i ] =97+(122-97)*rand()/ RAND_MAX; // строчные буквы
  9. printf("%c",mas[i]);}
  10. return (0);
  11. /*48+(58-48)(только цифры)*//*mas[ i ] = rand() % 26 + 'A' (еще один вариант для букв)*/
  12. }
Спасибо

Решение задачи: «Как сделать, чтобы random работал в нескольких диапазонах?»

textual
Листинг программы
  1. #include <stdio.h>
  2.  
  3. char get_random_character()
  4. {
  5.    switch( rand() % 3 )
  6.    {
  7.    case 0:
  8.       return rand() % 25 + 'a';
  9.    case 1:
  10.       return rand() % 25 + 'A';
  11.    case 2:
  12.       return rand() % 10 + '0';
  13.    }
  14. }
  15.  
  16. int main( int argc, char ** argv )
  17. {
  18.    srand( time(0) );
  19.    
  20.    int i;
  21.    for( i = 0; i < 80; i++ )
  22.       putchar( get_random_character() );
  23.    
  24.    return 0;
  25. }

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

  1. Включение файла стандартного ввода/вывода
  2. Функция get_random_character() генерирует случайный символ из заданного диапазона
  3. В функции используется оператор switch для определения случайного числа в диапазоне от 0 до 2
  4. В каждом случае функции возвращается случайное число в заданном диапазоне
  5. Функция main() запускает генератор случайных чисел с помощью функции srand(time(0))
  6. Переменная i используется для цикла, который генерирует 80 случайных символов
  7. Каждый символ выводится на экран с помощью функции putchar()
  8. Программа завершается возвратом 0 из функции main()

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

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

6   голосов , оценка 4.667 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы