Перейти к основному содержанию
EDU-MMCS
Вы используете гостевой доступ (Вход)

Программирование на C++

  1. В начало
  2. Курсы
  3. Осенний семестр
  4. Математика, механика
  5. Программирование на C++
  6. Модуль 1. Введение в C++. Лабораторные работы
  7. Лабораторная работа №1. Первые программы: ввод, вы...

Лабораторная работа №1. Первые программы: ввод, вычисления и управляющие конструкции

Открыто с: вторник, 8 сентября 2026, 00:00
Требуемые условия завершения

Цель занятия: закрепить ввод и вывод, выбор типов данных, ветвления, циклы и математические функции на небольших программах.

Необходимые темы и конструкции C++:

  • std::cin, std::cout, std::print
  • целые и вещественные типы, арифметические и логические операции
  • if, switch, условная операция
  • циклы for, while, do while
  • функции из <cmath>, assert

Структура проекта

Разместите решение в следующих файлах:

  • main.cpp

Общие требования

  • Каждое задание оформите как отдельную небольшую программу с одной функцией main.
  • Проверяйте допустимость входных данных до выполнения вычислений.
  • Не используйте массивы, строки и пользовательские функции: эти темы будут изучены позднее.

Основные задания

  1. Расстояние между точками

    Считать координаты двух точек на плоскости и вычислить расстояние между ними:

    \[ d=\sqrt{(x_2-x_1)^2+(y_2-y_1)^2}. \]

    Вывести результат с тремя знаками после десятичной точки.

    Требования:

    • Используйте std::sqrt; не вычисляйте квадрат через std::pow.
    Входные данные / вызов Результат
    0 0 3 4
    5.000
  2. Кусочно заданная функция

    Для введённого вещественного числа \(x\) вычислить значение функции

    \[ f(x)=\begin{cases}x^2+1,&x<-1,\\2x,&-1\le x\le 2,\\x-3,&x>2.\end{cases} \]

    Требования:

    • Граничные значения -1 и 2 должны попадать во вторую ветвь.
    Входные данные / вызов Результат
    -1
    -2
    3.5
    0.5
  3. Статистика цифр

    Для неотрицательного целого числа найти количество цифр, сумму цифр и наибольшую цифру.

    Требования:

    • Число 0 считать одноразрядным.
    • Используйте цикл while; не преобразовывайте число в строку.
    Входные данные / вызов Результат
    50730
    Количество: 5
    Сумма: 15
    Максимум: 7
    0
    Количество: 1
    Сумма: 0
    Максимум: 0

Домашнее задание

  1. Квадратное уравнение

    По коэффициентам \(a\), \(b\), \(c\) решить уравнение \(ax^2+bx+c=0\). Учесть линейный случай, отсутствие действительных корней и бесконечное множество решений.

    Требования:

    • Не вычисляйте квадратный корень из отрицательного числа.
    • Два корня выведите по возрастанию.
    Входные данные / вызов Результат
    1 -3 2
    1 2
    0 0 0
    Бесконечно много решений
  2. Следующая календарная дата

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

    Требования:

    • Год високосный, если он делится на \(400\), либо делится на \(4\), но не на \(100\).
    Входные данные / вызов Результат
    28 2 2024
    29.02.2024
    31 12 2025
    01.01.2026
  3. Рост вклада

    По начальной сумме \(S\), годовому проценту \(p\) и целевой сумме \(T\) определить минимальное число полных месяцев, после которых вклад достигнет цели. В конце каждого месяца сумма умножается на \(1+\frac{p}{1200}\).

    Требования:

    • Проверьте, что исходная сумма и цель положительны, процент неотрицателен, а достижение цели возможно.
    • Используйте цикл while.
    Входные данные / вызов Результат
    10000 12 10300
    3
◄ Лекция 1. Введение в C++

Блоки

Пропустить Навигация

Навигация

  • В начало

    • Страницы сайта

      • Мои курсы

      • Теги

    • Мои курсы

    • Курсы

      • Осенний семестр

        • Прикладная математика и информатика

        • Фундаментальная информатика и ИТ

        • Математика, механика

          • Программирование на C++

            • Самое главное

            • Лекции

            • Коллоквиумы

            • Модуль 1. Введение в C++. Лабораторные работы

              • ЗаданиеЛабораторная работа №1. Первые программы: ввод, вы...

            • Модуль 1. Контрольные работы

            • Модуль 2. Массивы и структурные типы данных. Лабор...

            • Модуль 2. Контрольные работы

            • Модуль 3. Файлы и динамические структуры данных. Л...

            • Модуль 3. Контрольные работы

          • Введение в проект - Проект 1

          • ТМ_26

          • ЭМТДТ

          • ООП 2019

          • Программирование*

        • Педагогическое образование

        • Магистратура

          • Разработка мобильных приложений и компьютерных игр

        • Аспирантура

        • Вечернее отделение

        • Другое

        • ОНС-Н_1

        • Прогр-ММ-2

        • Прогр-ММ-1

        • АБиМ-ИИБ26

        • МСиТВ_АБМ_2026

        • Python Eng

        • Экзамен ИКТ

        • ТестИИ

        • Информатика-Осень-ПМИ-2

        • Информатика-осень-ПМИ-1

        • ИММвс

      • Весенний семестр

        • Прикладная математика и информатика

        • Фундаментальная информатика и ИТ

        • Математика, механика

        • Педагогическое образование

        • Магистратура

          • Разработка мобильных приложений и компьютерных игр

        • Аспирантура

        • Вечернее отделение

        • Другое

      • Воскресная компьютерная школа

        • Пользователь компьютера плюс

        • Пользователь прикладных программ

        • Программирование I ступень

        • Программирование II ступень

        • Программирование III ступень

        • Архив

      • Воскресная математическая школа

        • Открытое тестирование РНОМЦ и мехмата ЮФУ

          • Открытое тестирование РНОМЦ и мехмата ЮФУ - 2026

          • Открытое тестирование РНОМЦ и мехмата ЮФУ - 2025

        • Олимпиадная математическая школа

        • Повышение квалификации

        • Доступная математика

        • Лаборатория математического онлайн-образования мех...

        • Осенняя универсиада

        • Научно-практическая конференция

        • ВМШ

          • ВМШ -2025

        • Летняя олимпиадная математическая школа РНОМЦ и ме...

      • Государственная итоговая аттестация

      • Дополнительное образование

      • Олимпиады

      • Видеолекции

      • Разное

      • Архив курсов

      • Заочная школа мехмата ЮФУ

Дополнительные блоки

Вы используете гостевой доступ (Вход)
Программирование на C++
Сводка хранения данных
Скачать мобильное приложение
Яндекс.Метрика