Команда для перехода со строки на строку + очистка экрана - PascalABC.NET

Узнай цену своей работы

Формулировка задачи:

Листинг программы
  1. var
  2. a,b,c:real;
  3. i :integer;
  4. begin
  5. write('a='); readln(a);
  6. write('b='); readln(b);
  7. write('1-сложение ');
  8. write('2-вычитание ');
  9. write('3-умножение ');
  10. writeln('4-деление ');
  11. write('Введите номер действия ');readln(i);
  12. case i of
  13. 1:
  14. begin
  15. c:=a+b;writeln(a,'+',b,'=',c)
  16. end;
  17. 2:
  18. begin
  19. c:=a-b;writeln(a,'-',b,'=',c)
  20. end;
  21. 3:
  22. begin
  23. c:=a*b;writeln(a,'*',b,'=',c)
  24. end;
  25. 4:
  26. begin
  27. c:=a/b;writeln(a,'/',b,'=',c)
  28. end;
  29. else
  30. write('Ошибка:нет такого действия.')
  31. end;
  32. end.
Например я хочу чтобы после завершение работа программы она не заканчивалась ,а начиналась с начала. И экран очищался.

Решение задачи: «Команда для перехода со строки на строку + очистка экрана»

textual
Листинг программы
  1. uses crt;//запуск по Shift+F9
  2. var  a,b,c:real;
  3.      i,w:char;//лучше символы чем цифры
  4. begin
  5. repeat
  6. clrscr;
  7. writeln('Введите 2 числа');
  8. readln(a,b);
  9. writeln('Выберите действие: 1-сложение 2-вычитание 3-умножение 4-деление');
  10. readln(i);
  11. case i of
  12. '1': begin
  13.      c:=a+b;
  14.      write(a,'+',b,'=',c);
  15.      readln
  16.      end;
  17. '2': begin
  18.      c:=a-b;
  19.      write(a,'-',b,'=',c);
  20.      readln
  21.      end;
  22. '3':begin
  23.     c:=a*b;
  24.     write(a,'*',b,'=',c);
  25.     readln
  26.     end;
  27. '4':begin
  28.     if b=0 then writeln('Деление на 0 невозможно')
  29.     else
  30.      begin
  31.      c:=a/b;
  32.      writeln(a,'/',b,'=',c);
  33.      readln
  34.      end;
  35.    end;
  36. else
  37.   begin
  38.   write('Ошибка:нет такого действия.');
  39.   readln
  40.   end;
  41. end;
  42. writeln('Повторить? y/Y');
  43. readln(w);
  44. until not(w in ['y','Y']);
  45. end.

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

  1. uses crt; - Импорт модуля CRT (компоненты ввода-вывода) для работы с консолью
  2. var a,b,c:real; - Объявление переменных a, b и c типа real (число с плавающей точкой)
  3. var i,w:char; - Объявление переменных i и w типа char (символы)
  4. begin - Начало выполнения программы
  5. repeat - Начало цикла
  6. clrscr; - Очистка экрана
  7. writeln('Введите 2 числа'); - Вывод сообщения для ввода двух чисел
  8. readln(a,b); - Чтение двух чисел с помощью функции readln и сохранение их в переменных a и b
  9. writeln('Выберите действие: 1-сложение 2-вычитание 3-умножение 4-деление'); - Вывод списка действий для выбора
  10. readln(i); - Чтение выбранного действия с помощью функции readln и сохранение его в переменной i
  11. case i of - Начало условного оператора case
  12. '1': begin - Если выбрано действие 1 (сложение)
  13. c:=a+b; - Выполнение сложения a и b, результат сохраняется в переменной c
  14. write(a,'+',b,'=',c); - Вывод результата сложения в формате a + b = c
  15. readln - Чтение символа конца строки
  16. end; '2': begin - Если выбрано действие 2 (вычитание)
  17. c:=a-b; - Выполнение вычитания a и b, результат сохраняется в переменной c
  18. write(a,'-',b,'=',c); - Вывод результата вычитания в формате a - b = c
  19. readln - Чтение символа конца строки
  20. end; '3':begin - Если выбрано действие 3 (умножение)
  21. *c:=ab;** - Выполнение умножения a и b, результат сохраняется в переменной c
  22. *write(a,'',b,'=',c);* - Вывод результата умножения в формате `a b = c`
  23. readln - Чтение символа конца строки
  24. end; '4':begin - Если выбрано действие 4 (деление)
  25. if b=0 then writeln('Деление на 0 невозможно') - Проверка, не равно ли b нулю, если да, то вывод сообщения об ошибке
  26. else - Иначе, если b не равно нулю
  27. c:=a/b; - Выполнение деления a на b, результат сохраняется в переменной c
  28. writeln(a,'/',b,'=',c); - Вывод результата деления в формате a / b = c
  29. readln - Чтение символа конца строки
  30. end; - Конец условного оператора case
  31. else - Если выбрано некорректное действие
  32. write('Ошибка:нет такого действия.'); - Вывод сообщения об ошибке
  33. readln - Чтение символа конца строки
  34. end; - Конец цикла
  35. writeln('Повторить? y/Y'); - Вывод вопроса о повторении
  36. readln(w); - Чтение ответа на вопрос с помощью функции readln и сохранение его в переменной w
  37. until not(w in ['y','Y']); - Цикл повторяется до тех пор, пока введенный ответ не будет 'Y'
  38. end. - Конец программы

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 4.333 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы