Практика в С++. Часть №14

  Юрий  | 

  Обновл. 12 Янв 2020  | 

 2856

 ǀ   30 

Здесь размещены задания по С++, которые вы можете выполнить. Каждое задание имеет свой уровень сложности, готовых ответов не будет, поэтому welcome в комментарии.

Easy: Задание №1

Каждая бактерия делится на две в течение одной минуты. В начальный момент имеется одна бактерия. Напишите программу, которая вычисляет общее количество бактерий после истечения указанного пользователем промежутка времени (например, после 5 или после 17 минут).

Medium: Задание №2


Напишите функцию int f(int h, int m, int s), которая принимает три целых аргумента (часы h, минуты m и секунды s) и возвращает количество секунд, прошедших с начала дня.

Hard: Задание №3

Напишите программу, которая считывает из файла целые числа, которые рандомно генерируются в диапазоне от 1 до 72. Для каждого считанного числа ваша программа должна вывести строку, содержащую соответствующее количество звёздочек. Например, если ваша программа считала из файла число 7, то она должна вывести 7 звёздочек: *******.

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

Числа из файла: 3 17 48 52 46 58 59 64 57
Результат:
Число №1 = 3 ***
Число №2 = 17 *****************
Число №3 = 48 **************************************
Число №4 = 52 ****************************************
Число №5 = 46 ***********************************
Число №6 = 58 ***************************************
Число №7 = 59 *********************************
Число №8 = 64 ***********************
Число №9 = 57 ***************************************


Оценить статью:

Звёзд: 1Звёзд: 2Звёзд: 3Звёзд: 4Звёзд: 5 (4 оценок, среднее: 5,00 из 5)
Загрузка...

Комментариев: 30

  1. Аватар Анастасия:

    Моё решение задания №3:

  2. Аватар Анастасия:

    Моё решение задания №2:

  3. Аватар Анастасия:

    Моё решение задания №1:

  4. Аватар Владимир:

    Задание №1:

    1. Аватар Анастасия:

      double long для количества бактерий — это что-то новенькое. И поэтому Вы потом делаете костыль, чтобы убрать кучу нулей после запятой. Но Ваша идея разделять разряды мне понравилась. Я думала, что есть какой-нибудь флаг или ещё что-то для этого, но не нашла.

  5. Аватар Shom:

    Задание №2.

    1. Аватар Владимир:

      Shom, можно было сразу считывать из файла в size_t num, без преобразования строки в число

    2. Аватар Анастасия:

      Это не второе, а третье задание

  6. Аватар Shom:

    Задание №1.

    1. Аватар Анастасия:

      А почему long double для количества бактерий? Они же не могут быть дробными…

  7. Аватар Алена:

    Задача 2.

    1. Аватар Анастасия:

      Было бы лучше прописать 60 и 3600 как константы.
      И, судя по коду, Вы допускаете, например 60 секунд или 24 часа.

  8. Аватар Владимир:

    1. Аватар Анастасия:

      Глобальные константы — зло, ну да ладно. А SHRT_MAX где определяется? И, мне кажется, массив тут лишний.

  9. Аватар Алена:

    Задача 1.

  10. Аватар Юлия:

    №3

    1. Аватар Владимир:

      Юлия, вместо: if (f.is_open ()) стр.36 должно быть: if (!fin.is_open()), иначе не будет проверки

  11. Аватар Юлия:

    №1

    1. Аватар Анастасия:

      Юлия, не многовато ли кода для такой задачки? По существу:
      опять перестраховались с кириллицей (много лишнего, чтобы её подключить),
      неговорящее значение для промежутка времени n.

  12. Аватар Илья:

    Задание 3:

    1. Аватар Владимир:

      Илья, у Вас в цикле for при каждой итерации создается новое условие для продолжения цикла. Возможно так и было задумано. Диапазон чисел файла не соответствует условию

  13. Аватар Илья:

    Задание 2:

  14. Аватар Илья:

    Задание 1:

    1. Аватар Анастасия:

      этот код уже получше, чем Ваши коды до этого, однако по прежнему Вы мало уделяете работе с пользователем. Не поясняете, на деление чего нужно ввести время. Не комментируете результат.

  15. Аватар Игорь:

    3-я Задача:

    1. Аватар Владимир:

      Игорь, а где у Вас запись в файл рандомных чисел, что-то я не обнаружил, на консоль будет выводиться, вероятно, мусор переменной х

  16. Аватар Пётр:

    2-я задача:

    1. Аватар Анастасия:

      Пётр,
      если h, m, s передаются в функцию в качестве параметров, зачем просить пользователя их вводить? Это нелогично. К тому же, Вы не указываете пользователю, в каком именно формате нужно вводить данные.
      Результат работы программы:
      Введите время (часы, минуты, секунды): 16:53:30
      Прошло 57600 секунд
      (посчитались только 16 часов)
      Второй запуск, я как прилежный пользователь ввела данные через запятую:
      Введите время (часы, минуты, секунды): 01, 10, 15
      Прошло 3600 секунд
      (посчитался только 1 час)

Добавить комментарий для Алена Отменить ответ

Ваш E-mail не будет опубликован. Обязательные поля помечены *