Составить диалоговую программу которая спрашивает сколько товара

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

Создадим свое диалоговое окно. Для примера оно создается используя несколько виджетов:

from tkinter import * window = Tk() window.title(«Message box title») window.geometry(«300×75″) label = Label(window, text=»My message content!») label.pack() button = Button(window, text=»Ok», width=10, command=window.destroy) button.pack(side=RIGHT) window.mainloop()
1
2
3
4
5
6
7
8
9
10

Линейные алгоритмы

Выполняя первую из них, Калькулятор прибавляет к числу на экране 3, а выполняя вторую, умножает его на 4. Запишите порядок команд в про-грамме получения из числа 3 числа 57, содержащей не более 6 команд, указывая лишь номера команд.

как писать программы №1 pascal знакомство сложение двух чисел

(Например, программа 21211 это программа

которая преобразует число 2 в 50.)

  1. Победитель многих олимпиад, Петя решил развесить дипломы, полученные за олимпиады, на стене в своей комнате. Стена имеет вид прямоугольника размера M × N сантиметров, а диплом — прямоугольника размера A × B сантиметров. Выясните, какое максимальное число дипломов Петя сможет разместить на стене. Поворачивать дипломы нельзя, они должны быть размещены так, чтобы их стороны были параллельны краям стены. Например, на стене размером 300 × 200 сантиметров можно разместить 84 диплома размера 21 × 29 сантиметров.
  2. Поменять значения переменных A и B между собой, не используя дополнительных переменных.
  3. Компания предлагает услуги по окраске досчатых заборов. У нее три предложения: 10 досок – 10 рублей. 5 досок – 8 рублей. 1 доска – 2 рубля. Напишите программу, подсчитывающую минимальную стоимость заказа в зависимости от введенного количества досок n. Усовершенствуйте программу для любых трех коммерческих предложений
  4. Студент начал решать задачи данного урока программирования, когда электронные часы показывали h1 часов и min1 минут, а закончил, когда было h2 часов и min2 минут. Составьте программу, позволяющую определить, сколько времени студент решал эти задачи. (Будем считать, что задачи решались не дольше суток.)
  5. Вычислите объем параллелепипеда со сторонами a, b, c.
  6. Напишите программу, которая вычисляет квадрат синуса вещественного числа, введенного с клавиатуры. На экран выводится дробная часть результата.
  7. Напишите программу, которая вычисляет квадратный корень суммы трех вещественных чисел, введенных с клавиатуры. Результат округлить до ближайшего целого.
  8. Напишите программу, которая вычисляет радиус окружности по введенной с клавиатуры площади окружности.
  9. Напишите программу, которая выводит квадрат косинуса угла в градусах, введенного с клавиатуры.
  10. Напишите программу, которая выводит сумму косинуса и синуса угла в градусах, введенного с клавиатуры.
  11. Напишите программу, которая выводит квадратный корень из косинуса угла в градусах, введенного с клавиатуры.
  12. Составить диалоговую программу, которая спрашивает, сколько товара и по какой цене берет покупатель, сообщает ему стоимость покупки. Затем спрашивает, сколько денег он дает и сообщает величину сдачи.
  13. Переменная X содержит трехзначное число. Поместите в переменную S сумму цифр этого числа. Выведите результат.
  14. Найти произведение цифр заданного целого четырехзначного числа.
  15. Присвоить целой переменной а первую цифру трехзначного положительного числа, целой переменной b вторую цифру, целой переменной с – третью. (Если число 325, то а=3, b=2, с=5. 325=3*100+2*10+5)
  16. Присвоить целой переменной h первую цифру из дробной части положительного вещественного числа x. (Если x=32.59, то h=5).
  17. Идёт k-я секунда суток. Определить, сколько полных часов (h) и полных минут (m) прошло к этому моменту (например, h=3 и m=40, при k=13257=3*3600+40*60+57).
Читайте также:
Надо ли выполнять обрамление линий сетки таблицы в программе ms excel

Источник: studfile.net

ИНФОРМАТИКА 8 класс: Общая структура программы в языке Паскаль

Диалог с пользователем через командную строку: программа Yes/No на Python

Диалоговые программы используются везде, примером может служить любое приложение на вашем компьютере (браузер, видеоплееры, текстовые редакторы и т. д.). Диалог Yes/No — это простой пример диалоговой программы, работающей с командной строкой.

Что такое диалоговая программа и зачем она нужна

Программа, в которой предусмотрено взаимодействие с пользователем, называется диалоговой (интерактивной).

Ввод текста, нажатия на кнопки, загрузка файлов — всё это способы взаимодействия пользователя с приложением.

Диалог между программой и пользователем — это важная часть любого проекта. Если программа работает с одними строго определенными данными, она не несёт какого-либо практического смысла.

Диалоговая программа Yes/No на Python

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

Суть такой программы проста: пользователь отвечает на вопросы, вводя в консоль Yes – да, или No – нет. Не стоит думать, что сейчас актуально взаимодействовать с программой только через графический интерфейс, командная строка также используется.

Например, в операционной системе Linux часто устанавливают программы через командную строку. Система может приостановить процесс и спросить пользователя, желает ли он продолжить установку «Do you want to continue [Y/n]?», для подтверждения он должен ввести Y, иначе N.

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

Консольный диалог Yes/No особенно актуален, потому что не требует реализовывать графический интерфейс, который может быть бесполезен для выполнения определённых задач.

Читайте также:
Этапы разработки коммуникационной программы

Реализация функции диалога Yes/No на Python

Написать консольную диалоговую программу на Python очень просто, однако нужно учесть и продумать некоторые нюансы, такие как неверный ввод от пользователя. Yes/no легко можно заменить на Да/нет, но давайте следовать общепринятым стандартам и использовать английский язык.

Объявление функции

Поместим всю логику диалоговой программы в отдельную функцию, которую объявим так:

def yes_no_dialog(question, default_answer=»yes»):

Здесь аргументы означают следующее:

  • question – это вопрос, который выводится в командную строку, и на который пользователь должен дать ответ «yes» или «no».
  • default_ answer – это необязательный параметр, который будет использоваться в том случае, если пользователь не введет ответ, а просто нажмет Enter.

Начальные настройки

Предположим, что пользователь может вводить не только «yes», но и «y» или «ye». Обработка каждого вариант с помощью условных операторов if — else нецелесообразна и требует много лишнего кода. Поэтому поместим все варианты ответа в словарь:

answers =

default_answer позволяет указать предпочтительный вариант ответа, однако это не очевидно для обычного пользователя. В зависимости от содержимого default_answer будем выводить соответствующую подсказку:

if default_answer == None: # Если ответ по умолчанию не определен tip = » [y/n] » # выводим обе буквы в нижнем регистре elif default_answer == «yes»: # Если ответ по умолчанию «yes» tip = » [Y/n] » # Выделяем Y elif default_answer == «no»: # Если ответ по умолчанию «no» tip = » [y/N] » else: raise ValueError(f’Неверное значение: ‘)

При вводе аргумента default_answer тоже можно допустить ошибку, поэтому в блоке else мы возбуждаем исключение, которое указывает на неверный ввод.

Основной цикл

Необходимо продумать следующие ситуации, когда пользователь:

  • Ничего не вводит, но определен default_answer .
  • Вводит верный ответ.
  • Вводит неверный ответ.
Читайте также:
Написать программу вычисления стоимости покупки нужно указать вид товара его цену и количество

Для реализации лучше использовать бесконечный цикл. Сначала необходимо вывести вопрос и подсказку, а затем получить ввод пользователя:

while True: print(question + tip + «: «, end=»») user_answer = input().lower() # приводим к нижнему регистру

Подробнее про ввод и вывод данных можно почитать здесь.

Теперь ввод необходимо обработать так, чтобы при правильном вводе происходил выход из цикла, а при неправильном цикл начинался заново:

# Если default_answer определен, а пользователь ничего не ввёл if default_answer is not None and user_answer == »: # Выходим из функции, возвращая значение, соответствующее default_answer return answers[default_answer] # Если пользователь ввел верный ответ elif user_answer in answers: return answers[user_answer] # Если ответ неверен, выводим сообщение и продолжаем цикл else: print(«Пожалуйста, введите yes/y или no/nn»)

Полный код функции

Соединив все вместе, получаем готовую к использованию функцию для диалога с пользователем:

def yes_no_dialog(question, default_answer=»yes»): answers = if default_answer == None: tip = » [y/n] » elif default_answer == «yes»: tip = » [Y/n] » elif default_answer == «no»: tip = » [y/N] » else: raise ValueError(f’Неверное значение: ‘) while True: print(question + tip + «: «, end=»») user_answer = input().lower() if default_answer is not None and user_answer == »: return answers[default_answer] elif user_answer in answers: return answers[user_answer] else: print(«Пожалуйста, введите yes/y или no/nn»)

Пример программы

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

a = open(«qst.txt», «r», encoding=»utf-8″) # открываем файл для чтения results = [] for line in a: # читаем файл построчно # Для каждой строки вызываем нашу функцию и помещаем возвращаемое # ею значение в список result results.append(yes_no_dialog(line.strip())) a.close() b = open(«results.txt», «w») # Открываем файл для записи for elem in results: # Записываем каждый элемент списка в файл через пробел b.write(str(elem) + » «) b.close()

С помощью метода строк strip удалим лишние символы.

Перед запуском программы на Python надо не забыть подготовить файл с вопросами qst.txt такого вида:

Первый вопрос Второй вопрос Третий вопрос

Чтобы русские буквы корректно отображались — правильно указываем кодировку при открытии файла. В моём случае это encoding=»utf-8″ .

Результатом выполнения будет следующее:

Первый вопрос [Y/n] : Y Второй вопрос [Y/n] : no Третий вопрос [Y/n] : yes

Содержимое файла результата будет следующим:

Источник: all-python.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru