Проект разработки программы-калькулятора CalcKurs на языке программирования Pascal. Курсовая работа (т). Информационное обеспечение, программирование.

⚡ 👉🏻👉🏻👉🏻 ИНФОРМАЦИЯ ДОСТУПНА ЗДЕСЬ ЖМИТЕ 👈🏻👈🏻👈🏻
Информационное обеспечение, программирование
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!
Похожие работы на - Проект разработки программы-калькулятора CalcKurs на языке программирования Pascal
Нужна качественная работа без плагиата?
Не нашел материал для своей работы?
Поможем написать качественную работу Без плагиата!
МОСКОВСКИЙ АВИАЦИОННЫЙ
ИНСТИТУТ (МАИ)
ГОСУДАРСТВЕННЫЙ
ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ
Факультет «СИСТЕМЫ
УПРАВЛЕНИЯ, ИНФОРМАТИКА И ЭЛЕКТРОЭНЕРГЕТИКА»
Кафедра 308 «Информационные
технологии»
Пояснительная
записка к курсовой работе
Руководитель: доцент, к.т.н. Гридин А.Н.
Разработать программу-калькулятор CalcKurs на языке
программирования Pascal, реализующую следующие функции:
1.формирование заданного подмножества натурального ряда с
помощью общего делителя;
3.нахождение НОД и НОК для заданной совокупности
натурального ряда;
4.нахождение рациональных решений уравнения с
целочисленными коэффициентами;
5.представление рациональной дроби в виде цепной;
6.представление цепной дроби в виде рациональной.
Название Windows: Windows Seven (6.1.7600) Ultimate
Название процессора: Intel(R) Core(TM)2 CPU 6300 @ 1.86GHz
Среда программирования: Turbo Pascal 7.0
Теория
чисел — это одно из направлений математики, которое иногда называют
«высшей арифметикой». Данная наука изучает натуральные числа и некоторые
сходные с ними объекты, рассматривает различные свойства (делимость,
разложимость, взаимосвязи и так далее), алгоритмы поиска чисел, а также
определяет ряд достаточно интересных наборов натуральных чисел.
Так, к примеру, в рамках теории чисел рассматриваются
вопросы делимости целых чисел друг на друга, алгоритм
Евклида для поиска наибольшего общего делителя, поиск наименьшего
общего кратного, малая и большая теоремы Ферма. В качестве самых известных рядов
натуральных чисел можно привести ряд
Фибоначчи , простые числа, совершенные и дружественные числа, степени
и суперстепени натуральных чисел.[1]
Вне самой математики теория чисел имеет довольно мало
приложений, и развивалась она не ради решения прикладных задач, а как искусство
ради искусства, обладающее своей внутренней красотой, тонкостью и трудностью.
Тем не менее теория чисел оказала большое влияние на математическую науку,
поскольку некоторые разделы математики (в том числе и такие, которые
впоследствии нашли применение в физике) были первоначально созданы для решения
особенно сложных проблем теории чисел.[2]
Разработанная программа включает в себя набор из
нескольких основных операций, которые могут понадобиться при решении более
сложных задач.
Программа CalcKurs выполняет следующие функции:
1.формирование заданного подмножества натурального ряда с
помощью общего делителя;
3.нахождение НОД и НОК для заданной совокупности
натурального ряда;
4.нахождение рациональных решений уравнения с
целочисленными коэффициентами;
5.представление рациональной дроби в виде цепной;
6.представление цепной дроби в виде рациональной.
Данная процедура формирует заданное подмножество
натурального ряда с помощью общего делителя.
Ищется общий делитель совокупности делителей (общий
делитель ищется с помощью нахождения наименьшего общего кратного делителей). На
заданном множестве (кол-во цифр в числах) ищем первый элемент, который будет
удовлетворять заданному условию (делится на НОК с остатком), запоминаем элемент
и прерываем цикл.
Формируем подмножество с помощью прибавления к первому
элементу делителя, суммируем количество элементов, пока элементы не станут
больше заданной размерности.
Делитель=10, остаток=3, размерность=2 (от 10 до 99)
Подмножество элементов={13, 23, 33, 43, 53, 63, 73, 83,
93}
Данная процедура выполняет факторизацию (разложение на
простые множители) числа с опциями.
Ищем для данного числа простой множитель с помощью решета
Эратосфена[3] (Для нахождения всех простых чисел не больше заданного числа n,
следуя методу Эратосфена, нужно выполнить следующие шаги:
Выписать подряд все целые числа от двух до n (2, 3, 4, …,
n).
Пусть переменная p изначально равна двум — первому
простому числу.
Вычеркнуть из списка все числа от 2p до n, делящиеся на p
(то есть, числа 2p, 3p, 4p, …)
Найти первое не вычеркнутое число, большее чем p, и
присвоить значению переменной p это число.
Повторять шаги 3 и 4 до тех пор, пока p не станет больше,
чем n
Все не вычеркнутые числа в списке — простые числа.)
и делим заданное число на данный множитель, потом ищем
следующий простой множитель(если он повторяется, то возводим его в степень), и
так до тех пор, пока число не станет равным единице. Записываем все простые
множители.
Далее находим все делители числа и составляем из них
множество. Вычисляем сумму делителей.
Данная процедура находит НОД и НОК для заданной
совокупности натурального ряда.
С помощью алгоритма Евклида (есть числа a,b и
последовательность R1>R2>R3>…>RN, где каждое RK - это остаток от
деления предпредыдущего числа на предыдущее, а предпоследнее делится на
последнее нацело. Тогда НОД(a,b), наибольший общий делитель a и b, равен RN, последнему
ненулевому члену этой последовательности) находим НОД[4] для первых двух чисел,
«цепляем» следующее число для нахождения следующего НОД, и так до тех пор, пока
совокупность чисел не закончится.
Для нахождения НОК первых двух чисел используем следующий
алгоритм: разлагаем данные числа на простые множители и к одному из таких
разложений приписываем множители недостающие у него против разложений остальных
данных чисел[5], и аналогично нахождению НОД «цепляем» следующее число.
Данная процедура находит рациональные решения уравнения с
целочисленными коэффициентами.
Рациональные корни уравнения ищутся с помощью расширенной
схемы(метода) Горнера[6] (раскладываем свободный член и коэффициент перед
старшей степенью на все возможные множители и делим все множители свободного
члена на все множители коэффициента перед старшей степенью (добавляем также
знак “-”); подставляем полученные значения в уравнение, если уравнение
получается равным нулю, то это значение – корень данного уравнения).
Возможные корни: +1, +1/2, +1/3, +1/6
Данная процедура переводит рациональную дробь в цепную[7].
Делим числитель на знаменатель, запоминаем его целое
значение (a div b, где а – числитель, b - знаменатель), находим остаток от
деления числителя на знаменатель (a mod b), присваиваем числителю значение
остатка, меняем местами числитель и знаменатель, и так делаем до тех пор, пока
(a mod b) не станет равен нулю.
Данная процедура переводит цепную дробь в рациональную.
Умножаем последний элемент цепной дроби с предпоследним и
прибавляем к полученному значению единицу, это будет значением числителя,
значением знаменателя будет последний элемент цепной дроби, меняем их местами,
теперь последним элементом цепной дроби будет полученный знаменатель; так
делаем, пока не закончатся элементы цепной дроби.
Разработана программа CalcKurs, выполняющая следующие
функции:
1.формирование заданного подмножества натурального ряда с
помощью общего делителя;
3.нахождение НОД и НОК для заданной совокупности
натурального ряда;
4.нахождение рациональных решений уравнения с
целочисленными коэффициентами;
5.представление рациональной дроби в виде цепной;
6.представление цепной дроби в виде рациональной.
К минусам программы можно отнести невысокую размерность
чисел, которые участвуют в вычислениях (-2147483648..2147483647), некоторые
алгоритмы можно сделать более оптимальными.
К плюсам можно отнести простоту в пользовании программой,
её малую требовательность к ресурсам компьютера, программа исполняет
основополагающие алгоритмы теории чисел. Она может помочь в изучении данного
раздела математики.
1.
http://ru.wikipedia.org/wiki/Теория_чисел
2.
http://www.krugosvet.ru/enc/nauka_i_tehnika/matematika/CHISEL_TEORIYA.html
3.
http://ru.wikipedia.org/wiki/Решето_Эратосфена
4.
http://ru.wikipedia.org/wiki/Наибольший_общий_делитель
5.
http://ru.wikipedia.org/wiki/Наименьшее_общее_кратное
6.
http://ru.wikipedia.org/wiki/Метод_Горнера
7.
http://dic.academic.ru/dic.nsf/es/39322/непрерывная
{----------------------------------------}
D,a,b:longint; {элементы заданного множества}
SUM:longint; {кол-во эл-ов, удовл условию}
writeln('введите ко-во чисел для нахождения НОК
делителей');
i:=1;while (dd[i]<>0) and
(i<=n) do inc(i);
if i<>n+1 then writeln('НОК
не сущ-ет')
if (maxj<>0) then for l:=1 to
maxj do e:=e*i;
if ((i<=0) or (k<0)) then {проверка
{----------------------------------------}
numb, powers: array [1..100] of
longint;
if c<=0 then {проверка на корр числа}
while c mod i <> 0 do {проверка на делимостьс/без
остатка}
Inc(n); {увеличение кол-ва простых множителей}
c:= c div i; {деление числа на простой множитель}
{\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\}
writeln('кол-во простых множителей: ',n);
if k=1 then writeln('числа взаимно
простые');
i:=1;while (b[i]<>0) and
(i<=n) do inc(i);
if i<>n+1 then writeln('НОК
не сущ-ет')
if (maxj<>0) then for l:=1 to
maxj do d:=d*i;
{----------------------------------------}
Writeln('Введите степень уравнения (max = 10)');
if n<=0 then writeln(‘степень не может быть<=0’)
writeln('введите кол-во эл-ов цепной дроби=');
if n<=0 then writeln(‘кол-во эл-ов не может
быть<=0’)
writeln('введите значения этих эл-ов=');
{----------------------------------------}
writeln('Курсовая работа, группа 03-119, каф308');
writeln('руководитель: Гридин А.Н.');
writeln('Калькулятор с функциями, описанными ниже');
writeln('Какую выполнить операцию?');
writeln('1-вычисление мн-ва N-значных чисел с заданным
делителем и остатком ');
writeln('3-нахождение НОД и НОК чисел');
writeln('4-нахождение рационльных корней уравнения с
целочисл коэфф');
writeln('5-перевод рациональной дроби в цепную');
writeln('6-перевод цепной дроби в рациональную');
write ('делитель или остаток не могут быть<0 ');
if i>k then {проверка на делитель>остатка}
writeln ('некорректная размерность ');
a:=pow(10,(R-1)); {инициализация верх и нижн границ}
if bделителя}
writeln ('делиоме не может быть < делителя ')
SUM:=0; {обнуление сумы кол-ва эл-ов}
if (D mod i)=k then {проверка эл-ов на условие}
writeln ('кол-во эл-ов с делителем=', i:3, ' и остатком=',
k:3, ' равно', SUM:6);
write ('остаток не может быть > делителя ');
{\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\}
write ('вывести значения на экран?(1-да\0-нет)');
writeln('нет эл-ов, удовл. условию')
{вычисление кол-ва делителей и их мн-ва}
k:=k*((pow(numb[i],powers[i]+1) - 1)
div (numb[i] - 1));
t:=t*(powers[i]+1); {кол-во делителей}
writeln('кол-во
множителей: tau(num)=',t);
writeln('сумма множителей: sigma(num)=',k);
{----------------------------------------}
type TArray=array [1..200] of integer;
writeln('введите ко-во чисел для нахождения НОД и
НОК');
if n<=0 then writeln(‘кол-во чисел не может
быть<=0’)
while (a[i]=0) and (i<=n) do
inc(i);
if i=n+1 then writeln('НОД – любое число')
for j:=1 to n do if a[j]=0 then
a[j]:=a[i];
if (minj<>0) then for l:=1 to
minj do k:=k*i;
sum:=sum+vec[i]*pow1(vecb[j]/veca[a],c-i);
if (sum<0.00001) and
(sum>-0.00001) then
if vec[a]=1 then writeln('ответ:',round(vecb[j]))
else writeln('ответ:',round(vecb[j]), '/',round(veca[a]));
{----------------------------------------}
if b=0 then writeln(‘знаменатель не может быть=0’)
{----------------------------------------}
writeln('Повторить выполнение калькулятора ?(Y/N)');
Похожие работы на - Проект разработки программы-калькулятора CalcKurs на языке программирования Pascal Курсовая работа (т). Информационное обеспечение, программирование.
Дипломная работа: Управление персоналом на предприятии. Скачать бесплатно и без регистрации
Курсовая Работа Пример Оформления Кубгу
Курсовая работа по теме Виды сделок в Российской Федерации
Реферат: Екатерина Великая и Россия Глазами Иностранцев в Эпоху
Курсовая работа по теме Разработка фирменных блюд из птицы
Химия 8 Класс Лабораторная Работа 9
Реферат по теме Сравнительный анализ стратегии командования Красной армии и вермахта в кампаниях 1943 г.
Реферат Мгу
Гдз По Сочинению 6 Класс Дубровский
Доклад по теме Актуальные проблемы социологии и их развитие
Реферат: Мистические традиции в познании. Скачать бесплатно и без регистрации
Дипломная работа по теме Разработка технического проекта мобильного комплекса для послеуборочной доработки вороха картофеля
Реферат по теме Курсовая работа по дисциплине «Сырье и материалы рыбной промышленности» Технохимическая характеристика темного окуня
Решу Огэ По Русскому Сочинение 9.3
Реферат по теме Франция эпохи Регентства (начало XVIII века)
Дипломная работа: Программное сопровождение практических работ по курсу "Конструирование и проектирование одежды". Скачать бесплатно и без регистрации
Реферат по теме Банковские системы США, Германии и Японии
Курсовая работа по теме Расчёт асинхронной машины
Контрольная работа: Основи державного права Великобританії
Реферат На Тему Мопассан И Русская Литература
Похожие работы на - Географические аспекты спелеотуризма в европейской части России
Реферат: Проблема бессмертия человека: альтернативные подходы и решения
Реферат: Проблема смысла жизни