Как да напиша програма за решаване на уравнения

Как да напиша програма за решаване на уравнения
Как да напиша програма за решаване на уравнения
Anonim

Бързото развитие на компютърните технологии направи възможно улесняването на решаването на много проблеми. Ако по-ранните сложни уравнения трябваше да се решават на хартия, сега можете лесно да напишете програма и да я направите за няколко секунди. Най-подходящият език за това е Python.

Програма
Програма

Подготовка за писане на програма

Научете теоретичните основи на решаването на линейни уравнения, преди да разработите вашата интерактивна програма. Това ще ви помогне да приложите по-ефективно вашия бъдещ код на приложение.

Изградете основата на програмата. Първата стъпка е да се дефинират класовете. Работата с големи групи числа като класове е по-лесна, ако компютърните ресурси са ограничени. Това ще помогне да се увеличи използваемостта на вашия код.

Създайте правила за приложението. Типичен пример е областта на стойността на входните данни. Колкото по-малко свободна RAM има на компютъра, толкова по-малко трябва да бъдат въведени числа.

Генериране на код на приложението

Отворете терминална сесия и извикайте интерпретатора на Python със следната команда:

My-iMac: ~ me $ python –v

Това ще покаже дълъг списък с всички модули на Python, налични в дадена версия на програмата. В края компилаторът ще ви каже коя версия на Python се използва на компютъра.

Създайте нова дефиниция на функция в Python, като въведете следния код в прозореца на компилатора. Много източници наричат тази функция "isolve":

>> def isolve (a, b, c):

Двоеточието ще попречи на компилатора незабавно да интерпретира кода, когато натиснете enter, и ще ви позволи да завършите работата.

Създайте две променливи, q и r, които вземат коефициента и остатъка от уравнението с променливи a и b и след това извикайте функцията divmod, за да намерите и разделите тези две числа. След това делителят и останалата част от операцията, ако има такива, ще се покажат на екрана. Кодът трябва да изглежда така:

… Q, r = divmod divmod (a, b)

Създайте условие if, което бързо ще изведе решението към уравнението, когато няма остатък. Въведете следния:

… Ако r == 0:

… връщане ([0, c / b])

Създайте друго условие за случая, когато има остатък:

… друго:

… Sol = isolve (b, r, c)

… U = sol [0]

… V = sol [1]

… връщане ([v, u - q * v])

Това ще постави b и r в divmod оператор, ще ги върне като u и v и след това ще ги върне като набор от решения. Пълният код на тази програма изглежда така:

>> def isolve (a, b, c):

… Q, r = divmod (a, b)

… Ако r == 0:

… връщане ([0, c / b])

… друго:

… Sol = isolve (b, r, c)

… U = sol [0]

… V = sol [1]

… връщане ([v, u - q * v])

Обърнете специално внимание на поясненията след клаузите else и if. Python няма да изпълни този код без правилна дефиниция.

Натиснете отново бутона за връщане, за да се върнете към предишния ред. Въведете функцията "isolve" и три стойности за z, y и c и натиснете Return. Трябва да видите следното:

>> isolve (5, 17, 103)

[721, -206]

Това означава, че програмата работи правилно и няма грешки в кода. Опитайте да въведете различни начални стойности, за да проверите дали изчисленията са правилни.

Препоръчано: