Вычисление площади поверхности цилиндра на языке C

CCBeginner
Практиковаться сейчас

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

В этом лабораторном занятии (lab) вы научитесь вычислять площадь поверхности цилиндра с использованием языка программирования C. В рамках лабораторной работы рассматриваются шаги по считыванию у пользователя радиуса и высоты цилиндра, а затем вычислению площади поверхности по формуле 2PIr*(r+h). Затем программа выведет вычисленную площадь поверхности.

В лабораторной работе предоставляется полное пошаговое руководство, включая необходимый код на языке C, чтобы помочь вам понять процесс вычисления площади поверхности цилиндра. К концу этого лабораторного занятия вы будете хорошо понимать, как выполнять геометрические вычисления с использованием языка программирования C.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL c(("C")) -.-> c/BasicsGroup(["Basics"]) c(("C")) -.-> c/FunctionsGroup(["Functions"]) c(("C")) -.-> c/UserInteractionGroup(["User Interaction"]) c/BasicsGroup -.-> c/variables("Variables") c/FunctionsGroup -.-> c/math_functions("Math Functions") c/UserInteractionGroup -.-> c/user_input("User Input") c/UserInteractionGroup -.-> c/output("Output") subgraph Lab Skills c/variables -.-> lab-435138{{"Вычисление площади поверхности цилиндра на языке C"}} c/math_functions -.-> lab-435138{{"Вычисление площади поверхности цилиндра на языке C"}} c/user_input -.-> lab-435138{{"Вычисление площади поверхности цилиндра на языке C"}} c/output -.-> lab-435138{{"Вычисление площади поверхности цилиндра на языке C"}} end

Считывание радиуса и высоты

На этом шаге вы научитесь считывать радиус и высоту цилиндра с использованием языка программирования C. Мы создадим простую программу, которая попросит пользователя ввести эти значения.

Сначала создадим новый файл на языке C в директории проекта:

cd ~/project
nano cylinder_surface_area.c

Теперь добавим в файл следующий код:

#include <stdio.h>

int main() {
    float radius, height;

    // Просим пользователя ввести радиус
    printf("Enter the radius of the cylinder: ");
    scanf("%f", &radius);

    // Просим пользователя ввести высоту
    printf("Enter the height of the cylinder: ");
    scanf("%f", &height);

    // Выводим введенные значения
    printf("Radius: %.2f\n", radius);
    printf("Height: %.2f\n", height);

    return 0;
}

Разберем код по частям:

  • Мы используем функцию printf() для вывода запросов на ввод радиуса и высоты.
  • Функция scanf() используется для считывания значений с плавающей точкой для радиуса и высоты.
  • %.2f форматирует вывод так, чтобы отображалось два знака после запятой.

Скомпилируем и запустим программу:

gcc cylinder_surface_area.c -o cylinder_surface_area
./cylinder_surface_area

Пример вывода:

Enter the radius of the cylinder: 5
Enter the height of the cylinder: 10
Radius: 5.00
Height: 10.00

Вычисление площади поверхности = 2PIr*(r+h)

На этом шаге вы измените предыдущую программу, чтобы вычислить площадь поверхности цилиндра по формуле: Площадь поверхности = 2PIr*(r+h).

Откройте существующий файл и обновите код:

cd ~/project
nano cylinder_surface_area.c

Замените предыдущий код следующим:

#include <stdio.h>
#define PI 3.14159

int main() {
    float radius, height, surface_area;

    // Просим пользователя ввести радиус
    printf("Enter the radius of the cylinder: ");
    scanf("%f", &radius);

    // Просим пользователя ввести высоту
    printf("Enter the height of the cylinder: ");
    scanf("%f", &height);

    // Вычисляем площадь поверхности
    surface_area = 2 * PI * radius * (radius + height);

    // Выводим результаты
    printf("Radius: %.2f\n", radius);
    printf("Height: %.2f\n", height);
    printf("Surface Area: %.2f\n", surface_area);

    return 0;
}

Разберем изменения:

  • Добавили #define PI 3.14159 для определения константы для π.
  • Создали переменную surface_area для хранения вычисленного результата.
  • Использовали формулу: Площадь поверхности = 2PIr*(r+h).
  • Добавили оператор вывода для отображения вычисленной площади поверхности.

Скомпилируйте и запустите программу:

gcc cylinder_surface_area.c -o cylinder_surface_area
./cylinder_surface_area

Пример вывода:

Enter the radius of the cylinder: 5
Enter the height of the cylinder: 10
Radius: 5.00
Height: 10.00
Surface Area: 628.32

Вывод площади поверхности

На этом последнем шаге вы улучшите программу, чтобы получить более удобочитаемый вывод площади поверхности цилиндра.

Откройте существующий файл и внесите последние изменения:

cd ~/project
nano cylinder_surface_area.c

Обновите код, добавив форматированный вывод:

#include <stdio.h>
#define PI 3.14159

int main() {
    float radius, height, surface_area;

    // Просим пользователя ввести радиус
    printf("Cylinder Surface Area Calculator\n");
    printf("--------------------------------\n");
    printf("Enter the radius of the cylinder: ");
    scanf("%f", &radius);

    // Просим пользователя ввести высоту
    printf("Enter the height of the cylinder: ");
    scanf("%f", &height);

    // Вычисляем площадь поверхности
    surface_area = 2 * PI * radius * (radius + height);

    // Выводим отформатированные результаты
    printf("\nCalculation Results:\n");
    printf("--------------------------------\n");
    printf("Radius:        %.2f units\n", radius);
    printf("Height:        %.2f units\n", height);
    printf("Surface Area:  %.2f square units\n", surface_area);

    return 0;
}

Скомпилируйте и запустите программу:

gcc cylinder_surface_area.c -o cylinder_surface_area
./cylinder_surface_area

Пример вывода:

Cylinder Surface Area Calculator
--------------------------------
Enter the radius of the cylinder: 5
Enter the height of the cylinder: 10

Calculation Results:
--------------------------------
Radius:        5.00 units
Height:        10.00 units
Surface Area:  628.32 square units

Основные улучшения:

  • Добавлен заголовок для калькулятора.
  • Включены разделители для лучшей читаемости.
  • Добавлены единицы измерения в вывод.
  • Результаты отформатированы с четкими метками.

Резюме

В этом лабораторном занятии (lab) вы научились считывать радиус и высоту цилиндра с использованием языка программирования C, а затем вычислять площадь поверхности цилиндра по формуле: Площадь поверхности = 2PIr*(r+h). Программа запрашивает у пользователя ввод радиуса и высоты, а затем вычисляет и выводит площадь поверхности.

Основные шаги, рассмотренные в этом лабораторном занятии: 1) считывание у пользователя радиуса и высоты, 2) вычисление площади поверхности по заданной формуле.