![]() |
|
сделать стартовой | добавить в избранное |
![]() |
Программирование решения задач |
Задача №1Написать программу для вычисления значения выражения: 2 1 3 4 6 5 7 x при различных значениях х. Предусмотреть программную обработку значений х, при которых выражение не существует. Решение Анализ введенных с клавиатуры исходных данных Условие, при котором х &g ; 0 Повторение предыдущей операции для каждой функции Выведение условия для выхода Вывод результатов program Projec 1; {$APP YPE CO SOLE} uses SysU ils; var x,y, :real; begi repea wri el ('e er x'); readl (x); if (x 7)=0 he wri el ('reshe iy e ') else if (5 6/(7 x))=0 he wri el ('reshe iy e ') else if (3 4/(5 6/(7 x)))=0 he wri el ('reshe iy e ') else y:=1 2/(3 4/(5 6/(7 x))); wri el ('y=',y:1:10); wri el ('dly vuhoda agmi e 0, esli e o 1'); readl ( ); if =0 he break u il false e d. Рис. 1. Результаты работы программы для задачи 1 Задача №2 Шахматная доска содержит 8х8 клеток. Горизонтали и вертикали обозначаются цифрами 1-8. Написать программу, проверяющую, можно ли с первой заданной клетки попасть на вторую одним ходом черного слона. Решение Анализ введенных с клавиатуры исходных данных для первой клетки Условие для а1 &g ; 8 или в1 &g ; 8. Анализ введенных с клавиатуры исходных данных для второй клетки Условие для abs (а2-а1). Выведение условия для выхода Вывод результатов Для решения задачи введем координаты первой клетки, притом, что они должны быть меньше восьми; затем координаты второй клетки (они также должны быть меньше восьми). Если разность координат первой клетки равна разности координат второй клетки, то значит с первой клетки можно попасть на вторую одним ходом черного слона, если координаты не равны , то нельзя. Запишем результат. program Projec 2; {$APP YPE CO SOLE} uses SysU ils; var a1,a2,b1,b2:i eger; c:real; begi repea wri el ('E er koordi a i 1-oy kle ki o 1 do 8'); readl (a1,b1); if (a1&g ;8) or (b1&g ;8) he wri el (' elsya e er e o chislo, e er o her'); wri el ('E er koordi a i 2-oy kle ki o 1 do 8'); readl (a2,b2); if abs(a2-a1)=abs(b2-b1) he wri el ('mog o') else wri el (' elsya'); readl ; wri el ('dly vuhoda agmi e 0, esli prodolgi o 1'); readl (c); if c=0 he break; u il false e d. Рис.2. Результаты рабаты программы для задачи 2 Задача №3 Татьяна Ларина, читая очередной французский роман, подсчитала сумму номеров прочитанных страниц. Написать программу, определяющую номер последней прочитанной страницы. Решение Анализ введенных с клавиатуры исходных данных Решение с помощью арифметической прогрессии Выведение условия для выхода Вывод результатов program Projec 2; {$APP YPE CO SOLE} uses SysU ils; var sum,i, :i eger; begi wri e('e er :'); readl ( ); i:=0; repea i c(i); sum:=sum i; u il sum&g ;= ; wri el ('o ve ',i); readl (i); e d. Рис. 3. Результаты работы программы для задачи 3 Задача №4 Найти все двузначные числа, сумма цифр которых не меняется при умножении на 2,3,4,5,6,7,8,9. Решение Для написания этой программы воспользуемся функцией sumc (умножение I на любое однозначное число ). Для проверки кратности удобно использовать операцию mod, позволяющую определить остаток при делении целых чисел. Так как числа двузначные, то цикл будет от 10 до 99.
program Projec 4; //uses SysU ils; var sum, i : i eger; fu c io sumc(val : i eger) : i eger; var x: i eger; begi x:= 0; repea x := x val mod 10; val := val div 10; u il val = 0; sumc := x; e d; begi for i := 10 o 99 do begi sum := sumc(i); if sumc(i 2) = sum he wri el ('2: ', i); if sumc(i 3) = sum he wri el ('3: ', i); if sumc(i 4) = sum he wri el ('4: ', i); if sumc(i 5) = sum he wri el ('5: ', i); if sumc(i 6) = sum he wri el ('6: ', i); if sumc(i 7) = sum he wri el ('7: ', i); if sumc(i 8) = sum he wri el ('8: ', i); if sumc(i 9) = sum he wri el ('9: ', i); ReadL ; e d. Рис. 4. Результаты работы программы для задачи 4 Задача №5 Одномерный массив, содержащий элементов, состоит из нулей, единиц и двоек, расположенных в произвольном порядке (заполнение массива-случайным образом). Преобразовать массив так, чтобы вначале расположились все двойки, затем все нули и, наконец, все единицы. Решение program Projec 5; //uses SysU ils; co s = 20; var arr : array of by e; mp, i, j, k : by e; begi ra domize; for i := 1 o do arr := ra dom(3); for i := 1 o do for j := i o do if arr := arr := mp; e d; for i := 1 o do if arr = 1 he begi k :=i; break; e d; for i := k o do for j := i o do if arr := arr := mp; e d; for i := 1 o do wri e(arr,' '); ReadL ; e d. Рис. 5. Результаты работы программы для задачи 5 Задача №6 Задана матрица расстояний между городами. Написать программу, указывающую все города, расстояния от которых до других городов не больше А. Решение program Projec 6; //uses SysU ils; co s a = 20; var arr : array of by e; i, j : by e; begi ra domize; for i := 1 o 5 do for j := 1 o 5 do arr := 0; for i := 2 o 5 do for j := 1 o i-1 do arr := ra dom(50) 1; for i := 1 o 5 do for j := 1 o 5 do if (arr&l ;&g ;0) he wri el (i, ' ', j, ' ', arr); ReadL ; e d. Рис. 6. Результаты работы программы для задачи 6 Задача №7 Удалить ведущие и конечные пробелы в строке. Решение Анализ введенных с клавиатуры исходных данных Применение функции rim Выведение условия для выхода 4. Вывод результатов Для решения этой задачи используем строковый тип данных. Для удаления пробелов воспользуемся функцией rim(удаляет все ведущие и конечные пробелы). Запишем результат. program Projec 7; {$APP YPE CO SOLE} uses SysU ils; var s:s ri g;I dex, Cou :i eger; :real; begi repea s:=('e er s roku s klavia uri'); readl (s); s:= rim(s); wri el (s); wri e('dly vuhoda agmi e 0, esli prodolgi o 1'); readl ( ); if =0 he break u il false e d. Рис.7. Результаты работы программы для задачи 7 Задача №8 Написать программу для удаления всех строк двумерного массива с отрицательными элементами. Решение Для решения задачи используем функцию haveo r, а также процедуру dele e(удаляет из строки символы, начиная с позиции I dex). Отметим, что haveo r=ложь, но если массив от 1 до 5 &l ; 0, то в этом случае haveo r=правда. program Projec 8; //uses SysU ils; var arr : array of i eger; i, j : by e; fu c io haveo r( : by e) : boolea ; begi haveo r := false; for j := 1 o 5 do if arr &l ; 0 he haveo r := rue; e d; procedure del( : by e); begi for j := 1 o 5 do arr ; e d; begi repea ra domize; for i := 1 o 5 do for j := 1 o 5 do arr := ra dom(5)-1; for i := 1 o 5 do if haveo r(i) he del(i); u il false e d.
Задача №9 Даны два непустых множества прописных и строчных букв. Написать программу, которая выводит перечисленные множества в алфавитном порядке. Решение Для решения задачи вводим два непустых множества (случайным образом вдвоём буквы). – число постоянное и равно 20. Вычисляем с помощью o le g h. Записываем результат. program Projec 9; //uses SysU ils; co s = 20; var mp : char; pr , s : s ri g; i, j : by e; a:real; begi repea wri el ('e er s '); readl (s ); for i := 1 o le g h(s ) do for j := i o le g h(s ) do if s := s := mp; e d; wri el ('e er pr'); readl (pr); for i := 1 o le g h(pr) do for j := i o le g h(pr) do if pr := pr := mp; e d; wri el (s ); wri el (pr); wri e('dly vuhoda agmi e 0, esli prodolgi o 1'); readl (a); if a=0 he break u il false e d. Рис. 9. Результаты работы программы для задачи 9 Задача №10 В файле целых чисел заменить все четные натуральные числа их квадратами. Решение program Projec 1; //uses SysU ils; var , i, mp : i eger; Fi , Fou : ex ; begi assig file(Fi , 'i . x '); ReSe (Fi ); assig file(Fou , 'ou . x '); ReWri e(Fou ); readl (fi , ); for i := 1 o do begi read(fi , mp); if mp mod 2 = 0 he wri e(fou , mp mp, ' ') else wri e(fou , mp, ' '); e d; closeFile(Fi ); closeFile(Fou ); e d.
У.Клоксин, К.Меллиш ПРОГРАММИРОВАНИЕ НА ЯЗЫКЕ ПРОЛОГ Для программистов и пользователей ЭВМ. ПРЕДИСЛОВИЕ РЕДАКТОРОВ ПЕРЕВОДА Язык программирования Пролог появился в 1970 г. одновременно с такими сейчас широко распространенными языками, как Паскаль и Си. Его ориентация – «нетрадиционные» применения вычислительной техники: понимание естественного языка, базы знаний, экспертные системы и другие задачи, которые принято относить к проблематике искусственного интеллекта. Сила этого языка – в принципиально отличном от традиционных языков программирования подходе к описанию способа решения задачи: программа на Прологе описывает не процедуру решения задачи, а логическую модель предметной области – некоторые факты относительно свойств предметной области и отношений между этими свойствами, а также правила вывода новых свойств и отношений из уже заданных. Таким образом, Пролог – описательный язык. Как отмечено в авторском предисловии, такой логический подход к программированию создает и некоторые проблемы в распространении языка: основные понятия языка опытными программистами понимаются без труда, однако практическое претворение этого понимания в полезные программы вызывает затруднения
1. Линейное программирование: решение задач графическим способом
3. Решение задач линейного программирования
4. Линейное программирование: постановка задач и графическое решение
5. Метод программирования и схем ветвей в процессах решения задач дискретной оптимизации
9. Графический метод решения задач линейного программирования
10. Обучение решению задач из раздела "Основы алгоритмизации и программирования"
11. Графический метод и симплекс-метод решения задач линейного программирования
12. Решение задачи линейного программирования симплекс-методом
13. Применение линейного программирования для решения задач оптимизации
14. Формирование структуры электронного учебника и решение задач на ней
15. Лабораторная работа №6 по "Основам теории систем" (Решение задачи о ранце методом ветвей и границ)
16. Построение решения задачи Гурса для телеграфного уравнения методом Римана
17. Решение задач линейной оптимизации симплекс – методом
18. Решение задач на построение сечений в многогранниках методом следов
20. Создание программных продуктов для решения задач
21. Решение задач по прикладной математике
25. Пример решения задачи по механике
27. Пути повышения эффективности обучения решению задач
28. От решения задач к механизмам трансляции деятельности
29. Дифференциальные уравнения движения точки. Решение задач динамики точки
31. Постановка и разработка алгоритма решения задачи Учёт основных средств
32. Применение Информационной Системы «GeoBox» для решения задач автоматизации строительства скважин
34. Решение задачи о кратчайшем маршруте
35. Построение математических моделей при решении задач оптимизации
37. Решение задач по бухгалтерскому учету и аудиту
41. Разработка формата хранения данных программ и решение задач
42. Решение задач исследования операций
43. Решение задач моделирования и оптимизации с помощью программ Excel и Mathcad
44. Решение задач оформление экономической документации
45. Решение задач с помощью ЭВМ
46. Решение задачи с помощью математической модели и средств MS Excel
47. Решение задачи с помощью программ Mathcad и Matlab
48. Решение задачи с помощью программ Mathcad и Matlab
49. Экспертная система для решения задачи о коммивояжере
50. Антивирусные программы. Матричный принцип печати. Решение задач на ЭВМ
53. Решение задач по курсу теории вероятности и математической статистики
57. Решение задач по теплотехнике
58. Решение задач по сопротивлению материалов
59. Решение задач по налоговому обеспечению
60. Примеры решения задач по реакциям электролиза
61. Применение методов экономической статистики при решении задач
62. Примеры решения задач по статистике
63. Решение задач по экономическому анализу
64. Экономическая статистика России: решение задач
65. Особенности решения задач в эконометрике
66. Решение задач по эконометрике
67. Решение задач прогнозирования с помощью статистического пакета SPSS
68. Решение задачи о коммивояжере
69. 10 задач с решениями программированием на Паскале
73. Решение оптимизационных управленческих задач на основе методов и моделей линейного программирования
74. Задачи по семейному праву /условие-вопрос-решение/
75. По решению прикладных задач на языке FRED
76. Графы. решение практических задач с использованием графов (С++)
77. Лабораторная работа №5 по "Основам теории систем" (Транспортные задачи линейного программирования)
79. Постановка задачи линейного программирования и двойственная задача линейного программирования.
80. Метод Алексея Юрьевича Виноградова для решения краевых задач
81. Несколько способов решения одной геометрической задачи
82. Решение обратных задач теплопроводности для элементов конструкций простой геометрической формы
83. Задачи (с решениями) по сопромату
89. Динамическое программирование (задача о загрузке)
90. К решению нелинейных вариационных задач
91. План-конспект урока Математическое моделирование при решении экологических задач
92. Алгоритмы декомпозиции и перебора L-классов для решения некоторых задач размещения
93. О некоторых трудностях, возникающих при решении геометрических задач
94. Способ устойчивого решения неустойчивых задач и его алгоритм
97. Нечеткая логика при решении криминологических задач
98. Алгоритм решения обратной задачи вихретокового контроля (ВТК)