Лекция Основы алгоритмизации. Алгоритмы и величины. Этапы решения задачи на ЭВМ



бет7/37
Дата16.01.2022
өлшемі0,96 Mb.
#129365
түріЛекция
1   2   3   4   5   6   7   8   9   10   ...   37
Байланысты:
Все лекции

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

Вы уже знакомы с основными числовыми типами данных int и float. К ним применимы стандартные функции, часть из которых приведена в табл. 3.3.
















Таблица 3.3

Функция

Назначение

Тип аргумента

Тип результата
















abs (х)

Модуль x




int, float

Такой же, как у аргумента













round (х)

Округление вещественного х

float

int, float




доближайшегоцелого










(можно задать

количество










знаков после запятой







int (х)

Преобразование

веществен-

str, float

int




ного или строкового х к це-










лому









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


import math

После этого обращение должно выглядеть как:


y = math.sqrt (x)

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


from math import *

Теперь к функциям модуля math можно обращаться так же, как к встроенным функциям:


y=sqrt (x)





Функция




Назначение




Тип аргумента




Тип результата





































sqrt (х)




Квадратный корень из x




int, float




float





































sin (x)




Синус угла x, заданного в радиа-




int, float




float










нах
































































Для работы со случайными числами нужно использовать модуль random































Функция




Назначение







Тип аргумента




Тип результата






















random()




Случайное число от 0 до 1




-




float






















randint(a,b)




Случайное число n, a ≤ n ≤ b




int




int






























Пример: для того, чтобы записать в переменную a случайное число в диапазоне от 1 до 10, можно использовать следующие операторы:


from random import randinta = randint (1,10)

Исследуем работу функций round и int, применив их к некоторому вещественному х.


Соответствующая программа будет иметь вид:

Программа 3


print ('Исследование функций round, int ')

x=float(input (' Введите х>>'))


print ('Округление - ', round(x))

print ('Целая часть - ', int(x))


Запустите программу несколько раз для каждого х ={10,2; 10,8; -10,2; -10,8}. Что вы мо-жете сказать о типе результата каждой из этих функций?

Целочисленный тип данных

Над целыми числами в языке Python выполняются следующие операции:



  • сложение (+)




  • вычитание (-)




  • умножение (*)




  • получение целого частного (//)




  • получение целого остатка деления (%)




  • деление (/)




  • возведение в степень (**)

Результаты первых пяти операций — целые числа. Результатом операции деления может быть вещественное число.


Рассмотрим пример использования операций // и %, записав на языке Python программу нахождения суммы цифр вводимого с клавиатуры натурального трёхзначного числа.
Используем тот факт, что положительное трёхзначное число можно представить в виде следующей суммы: х = а * 100 + b * 10 + с, где a, b, c — цифры числа.

Программа 4


print ('Нахождение суммы цифр трёхзначного числа'); x = int (input ('Введите исходное число>>'))

  • =х//100

b = x % 100 // 10




  • = x % 10 s = a + b + c print ('s= ', s)

Чему равна сумма цифр числа 123? А числа -123? Совпадают ли ваши результаты с ре-зультатами работы программы? Как можно объяснить и исправить ошибку в программе?


Строковый тип данных

Значением строковой величины (тип str) является произвольная последовательность сим-волов, заключенная в апострофы. Символами в языке Python является любой из символов, кото-рый можно получить на экране нажатием на клавиатуре одной из клавиш или комбинации кла-виш, а также некоторых других символов, в том числе и невидимых. Множество таких символов состоит из 256 элементов, каждому из которых согласно используемой кодовой таблице постав-лен в соответствие код — число 0 до 255.


Символы, соответствующие первым 32 кодам, являются управляющими, а остальные — изображаемыми. К изображаемым символам относится и пробел, имеющий код 32.
Знакам препинания, знакам арифметических операций, цифрам, прописным и строчным латинским буквам соответствуют коды от 33 до 127. Буквам национального алфавита соответ-ствуют коды с номерами 128 и далее.


  1. тексте программы переменную строкового типа можно задать, заключив цепочку сим-волов в апострофы или кавычки: s = '5'; c = 'Вook'; c1 = "1 * ".

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


В Python (как и в алгоритмическом языке) строки можно сцеплять.
Пример. Запишем на языке Python программу, которая запрашивает имя и выводит при-ветствие.

Программа 5


print ('Как тебя зовут?')

n = input()

print ('Привет,', n)
Логический тип данных

Как известно, величины логического типа принимают всего два значения; в Python это False и True. Эти константы определены так, что False < True.


Логические значения получаются в результате выполнения операций сравнения числовых, символьных, строковых и логических выражений. Поэтому в Python логической переменной можно присваивать результат операции сравнения.
Пример. Напишем программу, определяющую истинность высказывания «Число n явля-ется чётным» для произвольного целого числа n.
Пусть ans — логическая переменная, а n — целая переменная. Тогда в результате выпол-нения оператора присваивания
ans = n % 2 == 0
переменной ans будет присвоено значение True при любом чётном n и False в противном случае.

Программа 6


print ('Определение истинности высказывания о чётности числа')

n = int (print ('Введите исходное число>>'))

ans = n % 2 == 0

print ('Число', n, 'является чётным -', ans)


Логическим переменным можно присваивать значения логических выражений, построен-ных с помощью известных вам логических функций и, или, не, которые в Python обозначаются соответственно and, or, not.
Пример. Напишем программу, определяющую истинность высказывания «Треугольник с длинами сторон а, b, с является равнобедренным» для произвольных целых чисел a, b, c.

Программа 7


print ('Определение истинности высказывания о равнобедренном треугольнике')

  1. = int (input('Введите значение а>>'))




  1. = int (input('Введите значениеb>>'))

  2. = int (input('Введите значениеc>>')) ans = (a== b) or (а== с) or (b== c)

print ('Треугольник с длинами сторон', а, ',', b, ', ', с,' является равнобедренным –', ans)





Достарыңызбен бөлісу:
1   2   3   4   5   6   7   8   9   10   ...   37




©engime.org 2024
әкімшілігінің қараңыз

    Басты бет