Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву
Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Задача 2. Использование целочисленного деленияСодержание книги
Поиск на нашем сайте Условие задачи. Длительность промежутка времени задана в секундах. Выразить её в часах, минутах и секундах. Например, 7940 с. составляют 2 ° ч. 12 ° мин. 20 с. Определим исходные данные и требуемые результаты. Дан промежуток времени в секундах – это исходное данное, которое может принимать только целое положительное значение. Для него выделим переменную Т. Результат представляет собой 3 величины: количество часов (переменная Н), минут (М) и секунд (S). Эти значения также могут быть только целыми положительными. Теперь надо решить, какая последовательность действий позволит получить искомый результат. Каждый знает, что 1 час содержит 60 минут, 1 минута – 60 секунд и, следовательно, 1 час – это 60*60, т.е. 3600 секунд. Поэтому если заданное количество секунд разделить на 3600 и отбросить дробную часть частного, получим целое количество часов во временном отрезке - Н, а остаток от деления будет определять оставшуюся часть отрезка в секундах (Т1), не вошедшую в Н. Например, если заданный промежуток времени составляет 7940 секунд, то целых часов в нём будет Н 7940/3600=2, а оставшаяся часть времени равна 740 секунд (это значение Т1). Поскольку Т1 выражено в секундах, то при делении на 60 целая часть частного будет соответствовать количеству минут (М), содержащихся в Т1, а остаток от деления – количеству оставшихся секунд (S). В нашем примере М будет равно 740/60=12 минут, а остаток составит S =20 секунд. Во всех рассматриваемых языках программирования есть средства (операции или функции) для выполнения целочисленного деления и нахождения остатка. Именно они должны быть использованы для получения результата. Разделение заданного отрезка Т на составляющие можно проиллюстрировать схемой:
Рис. 1 Поскольку действия для решения данной задачи (ввод исходного данного, вычисления и вывод результата) должны выполняться последовательно одно за другим, то в данном случае используется, как и в предыдущей задаче, линейный, или последовательный, алгоритм. Воспользуемся обозначением div для операции целочисленного деления, а для операции получения остатка от целочисленного деления — mod. Структурированная запись алгоритма 2 1. Ввести T. 2. Вычислить целую часть от Т/3600 и поместить в переменную Н; остаток от деления Т/3600 поместить в переменную Т1. 3. Выполнить деление Т1 на 60 и целую часть результата присвоить переменной М; остаток от деления присвоить переменной S. 4. Вывести Н, М и S. Схема алгоритма
Программа на языке Си #include <stdio.h> int main (void) { unsigned int t, h, t1, m, s; printf (″Введите время в секундах″); scanf (″%u″, &t); h=t/3600; t1=t%3600; m=t1/60; s=t1%60; printf (″%u с = %u ч %u мин %u с″,t,h,m,s); return 0: } Программа на языке Паскаль Program Pr_2; Var T, H, T1, M, S: integer; begin writeln('Введите время в секундах'); read(T); H:=T div 3600; T1:=T mod 3600; M:=T1 div 60; S:=T1 mod 60; writeln(T,' с=', H,' ч', M,' мин', S,' с') end. Программа на языке Фортран Program Pr_2 Implicit none integer T, H, T1, M, S print *, 'Введите время в секундах' read *, T H = T/3600 T1 = mod(T,3600) M = T1/60 S = mod(T1,60) print *, T,' с=', H,' ч', M,' мин', S,' с' end Программа на языке Python print("Введите время в секундах") t = int(input()) h = t // 3600 t1 = t % 3600; m = t1 // 60; s = t1 % 60; print(t," сек = ",h," ч ",m," мин ",s," сек") Программа в системе Матлаб T=input('Введите время в секундах'); H = fix(T/3600); T1 = mod(T,3600); M = fix(T1/60); S = mod(T1,60); disp(strcat(int2str(T),' с=', int2str(H),' ч',…
|
||
|
Последнее изменение этой страницы: 2021-04-12; просмотров: 192; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 216.73.217.21 (0.007 с.) |