Применение операторов

Завершено

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

Чтение входных данных из консоли

Для чтения данных из консоли вы можете использовать методы, найденные в пространстве имен System. Вы хотите использовать что-то вроде Console.Readline(). Этот метод считывает все символы до символа новой строки и помещает эти символы в строку. Ниже приведен пример использования этого метода.

System.Console.Write "Type a value:"
let str = System.Console.ReadLine()
printfn "You typed %s" str

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

Преобразование между типами данных

Вы видели, как F# неявным образом определяет тип переменной, присваивая переменной значение, например:

let myNumber = 3

Но что, если у вас есть строка, и вы хотите преобразовать ее в int?

let myString = "3"

Существует два основных подхода.

  • System.Int32.Parse(): используйте то, что работает в .NET, функцию Parse() в пространстве имен System, System.Int32.Parse().
  • Встроенный int: имеется встроенная функция int, которую вы можете использовать.

Чтобы использовать первый подход, напишите код следующим образом:

let first = "32"
let numberVersion = System.Int32.Parse first 
printfn "Number %i" numberVersion // Output: Number 32

Чтобы использовать встроенную int функцию, введите следующую команду:

let first = "32"
let numberVersion =  int first 
printfn "Number %i" numberVersion

Так какой из них вы используете? Версия со встроенной функцией int является предпочтительной.

Операторы

Вы узнали, как читать ввод с консоли, и увидели, как этот ввод сохраняется в виде строки. Вы видели, как использовать его в рамках операции, как преобразовать значение из строки в int. Функции преобразования существуют для большинства типов. Чтобы сделать что-то полезное с вашим кодом, вам нужно узнать об операторах. Используя математические операторы, вы можете складывать, вычитать, делить и т. д. Эти операторы поддерживают основные типы данных. Вот некоторые из наиболее важных операторов.

Оператор Описание
+ Добавляет два значения
- Вычитает одно значение из другого
/ Делит левое значение на правое
% Операция называется 'модуль', дает остаток от деления левого значения на правое.
<> Проверяет, не равны ли два значения
= Проверяет, равны ли два значения

Например, чтобы использовать оператор модуля, вы вводите:

let no = 10
let isDivisibleByTwo = no % 2 = 0
printfn "Divisible by two %b" isDivisibleByTwo