Пишем простой калькулятор на Golang. Подробная инструкция.

В этой статье мы создадим простой калькулятор на языке программирования Go (Golang). Мы пройдемся по основам языка, рассмотрим базовые операции и научимся работать с пользовательским вводом и выводом.


👣 Golang  – лучший обучающий канал-гайд в телеграме ! 

Что такое Go?

Go (Golang) — это статически типизированный язык программирования, разработанный компанией Google. Он сочетает в себе простоту синтаксиса и высокую производительность, что делает его отличным выбором для написания как системных приложений, так и сервисов.

Структура программы на Go

Программа на Go состоит из пакетов (packages). Основной пакет программы всегда называется main, и именно в нем содержится функция main, с которой начинается выполнение программы.

package main

import (
"fmt"
)

func main() {
fmt.Println("Hello, World!")
}

План калькулятора

Мы реализуем калькулятор, который сможет выполнять четыре основные арифметические операции: сложение, вычитание, умножение и деление. Программа будет принимать два числа и оператор от пользователя, а затем выводить результат вычисления.

Основные операции калькулятора

Начнем с написания функций для каждой арифметической операции. Эти функции будут принимать два аргумента типа float64 и возвращать результат вычисления того же типа.

Функция сложения

func add(a, b float64) float64 {
    return a + b
}

Функция вычитания

func subtract(a, b float64) float64 {
    return a - b
}

Функция умножения

func multiply(a, b float64) float64 {
return a * b
}




Функция деления

func divide(a, b float64) float64 {
    if b == 0 {
        fmt.Println("Ошибка: деление на ноль!")
        return 0
    }
    return a / b
}

Ввод данных от пользователя

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

func getInput() (float64, float64, string) {
    var a, b float64
    var operator string

    fmt.Print("Введите первое число: ")
    fmt.Scanln(&a)

    fmt.Print("Введите второе число: ")
    fmt.Scanln(&b)

    fmt.Print("Введите оператор (+, -, *, /): ")
    fmt.Scanln(&operator)

    return a, b, operator
}

Основная функция калькулятора

Теперь, когда у нас есть функции для арифметических операций и ввода данных, мы можем собрать все вместе в основной функции программы.

func main() {
    a, b, operator := getInput()

    var result float64

    switch operator {
    case "+":
        result = add(a, b)
    case "-":
        result = subtract(a, b)
    case "*":
        result = multiply(a, b)
    case "/":
        result = divide(a, b)
    default:
        fmt.Println("Неизвестный оператор")
        return
    }

    fmt.Printf("Результат: %.2f\n", result)
}

Полный код программы

Объединив все части, мы получим следующий код:

package main

import (
"fmt"
)

func add(a, b float64) float64 {
return a + b
}

func subtract(a, b float64) float64 {
return a - b
}

func multiply(a, b float64) float64 {
return a * b
}

func divide(a, b float64) float64 {
if b == 0 {
fmt.Println("Ошибка: деление на ноль!")
return 0
}
return a / b
}

func getInput() (float64, float64, string) {
var a, b float64
var operator string

fmt.Print("Введите первое число: ")
fmt.Scanln(&a)

fmt.Print("Введите второе число: ")
fmt.Scanln(&b)

fmt.Print("Введите оператор (+, -, *, /): ")
fmt.Scanln(&operator)

return a, b, operator
}

func main() {
a, b, operator := getInput()

var result float64

switch operator {
case "+":
result = add(a, b)
case "-":
result = subtract(a, b)
case "*":
result = multiply(a, b)
case "/":
result = divide(a, b)
default:
fmt.Println("Неизвестный оператор")
return
}

fmt.Printf("Результат: %.2f\n", result)
}

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

  1. Импорт пакетов: Мы импортируем пакет fmt, который используется для ввода/вывода данных.
  2. Арифметические функции: Эти функции выполняют простые математические операции и возвращают результат.
  3. Функция ввода данных: Считывает два числа и оператор от пользователя.
  4. Основная функция: В зависимости от введенного оператора выполняется соответствующая арифметическая операция, а результат выводится на экран.

Запуск программы

Чтобы запустить программу, нужно сохранить код в файл с расширением .go (например, calculator.go) и выполнить команду:

go run calculator.go

Заключение

Мы написали простой калькулятор на Go, который может выполнять базовые арифметические операции. Этот пример демонстрирует основные возможности Go, такие как работа с функциями, пользовательским вводом и операторами управления.

+1
1
+1
8
+1
0
+1
0
+1
1

Ответить

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