Теоретические сведения. Зачастую для решения одной и той же задачи можно использовать разные средства языка.

Зачастую для решения одной и той же задачи можно использовать разные средства языка.

В качестве примеров рассмотрим классические задачи вычисления корней линейного и квадратного уравнений.

 

Пример 1. Составьте программу для решения уравнения вида на множестве действительных чисел. Исходные данные – значения коэффициентов а, b вводятся пользователем с клавиатуры.

Известно, что при разных значениях коэффициентов a и b задача вычисления корней должна решаться по разным правилам. Перечислим возможные варианты:

а!=0 – уравнение имеет единственный корень, который вычисляется по формуле x=a/b;

а==0, b!=0 – уравнение примет вид 0 = b, которое при ненулевом значении b корней не имеет;

а==0, b==0 – уравнение примет вид 0 = 0, решением которого является множество действительных чисел.

Блок-схема данной программы будет выглядеть следующим образом:

 

// Программа для решения линейного уравнения

#include <stdio.h>

#include <math.h>

void main () {

float a,b,x;

printf ("Введите коэффициенты линейного уравнения: ");

printf ("\n a = "); scanf ("%f",&a);

printf (" b = "); scanf ("%f",&b);

printf ("\nРешение линейного уравнения: ");

if (a==0)

if (b==0) printf ("Х - любое число");

else printf ("нет решения");

else {

x=-b/a;

printf ("\n X = %f",x);

}

}

Пример 2. Составьте программу для решения квадратного уравнения на множестве комплексных чисел. Исходные данные – действительные значения коэффициентов а, b, с вводятся пользователем с клавиатуры.

Известно, что при разных значениях коэффициентов a, b, с задача вычисления корней должна решаться по разным правилам. Перечислим возможные варианты:

а==0 – линейное уравнение;

а!=0, b*b-4*a*c>0 – два различных действительных корня;

а!=0, b*b-4*a*c=0 – два совпадающих действительных корня;

а!=0, b*b-4*a*c<0 – два комплексных корня.

В случаях, когда a! =0 справедлива формула: .

С ее помощью при положительном дискриминанте вычисляются два действительных корня. При отрицательном дискриминанте, т.е. когда , комплексные корни можно определить так: , где i – мнимая единица.

 

Отметим, что в языке Си комплексную величину можно представить двумя переменными, соответствующими ее действительной и мнимой частям.

 

 

Блок-схема данной программы будет выглядеть следующим образом:

 

// Программа для решения квадратного уравнения

#include <stdio.h>

#include <math.h>

void main () {

float a,b,c,x1,x2,x,xi,d;

printf ("Введите коэффициенты квадратного уравнения: ");

printf ("\n a = "); scanf ("%f",&a);

printf (" b = "); scanf ("%f",&b);

printf (" c = "); scanf ("%f",&c);

printf ("\nРешение квадратного уравнения: ");

if (a==0)

if (b==0)

if (c==0) printf ("Х - любое число");

else printf ("нет решения");

else {

x1=-c/b;

printf ("\n X = %f",x1);

}

else {

d=b*b-4*a*c;

if (d>0) {

x1=(-b-sqrt(d))/(2*a);

x2=(-b+sqrt(d))/(2*a);

printf ("\n X1 = %f \n X2 = %f ",x1,x2);

}

else

if (d==0) {

x1=-b/(2*a);

printf ("\n X1 = X2 = %f",x1);

}

else{

x=-b/(2*a);

xi=sqrt(-d)/2/a;

printf ("\n X1 = %f + %f i \n X2 = %f - %f i ",

x,xi,x,xi);

}

}

}

Задания

1.Составьте программу для решения задачи. Даны три действительных числа a, b, c. Определите, существует ли треугольник с такими сторонами, а, если существует, то укажите его вид (прямоугольный, остроугольный, тупоугольный).

2.Составьте программу для решения задачи. В магазине действует система скидок: при покупке товара на сумму свыше 200 рублей – скидка 2%, свыше 500 рублей – 3%, свыше 1000 рублей – 10%. Определите, какую сумму должен оплатить покупатель, если им куплен товар на сумму N рублей.

Домашние задания

1.Наберите код программ из Примеров 1 и 2. Сохраните коды программ. Выполните компиляцию и запуск программ. Введите свои данные в качестве входных.

2.Составьте программу для решения биквадратного уравнения вида для действительных x. Исходные данные – значения коэффициентов а, b, с вводятся пользователем с клавиатуры.

3. Индивидуальное задание №1. Номер варианта определяется по журналу. Разработайте программу для вычисления у с учетом области определения функции. Числа a, b, c вводятся с клавиатуры.

4. Индивидуальное задание №2. Номер варианта определяется по журналу. Составьте программу для решения задачи.

Варианты индивидуального задания №1

Задание
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.

Варианты индивидуального задания №2

Задание
1. Составить программу, которая вычисляет оптимальный вес пользователя, сравнивает его с реальным весом (его вводит пользователь) и выдает рекомендацию о необходимости поправиться или похудеть на некоторое количество килограммов или сообщает о том, что пользователь в идеальной форме. Оптимальный вес вычисляется по формуле: рост (в см) – 100.
2. Билеты нумеруются шестизначными целыми числами. Билет считается «счастливым», если сумма трех первых цифр его номера рана сумме трех последних цифр. Определите, является ли «счастливым» билет с номером n.
3. Дано трехзначное число, у которого число единиц не превосходит числа сотен. Проверить, является ли оно палиндромом, т.е. число, которое одинаково читается слева направо и справа налево. Если не является, то вывести ближайшее следующее число-палиндром.
4. Скорость передачи данных по сети v Кбит/с, за подключение к сети за сеанс связи взимается плата а копеек. Требуется получить k Мбайт информации, оплачено на данный момент n минут работы в сети. Будет ли получена требуемая информация, если сеть работает стабильно?
5. Решите уравнение вида arcsin x = a относительно х. Входным данным является значение а.
6. С клавиатуры вводится целое число х их промежутка [100, 9999]. Если число четырехзначное, то найти сумму его цифр, а если трехзначное, то произведение цифр числа.
7. Удвоить трехзначное число, введенное с клавиатуры, если оно содержит в своей записи хотя бы одну 1, и возвести в квадрат в противном случае.
8. Дано 5-значное число. Определить, упорядочены ли по возрастанию цифры в записи этого числа. Например, в числе 13789 цифры упорядочены по возрастанию, а в числе 34609 – нет.
9. Даны три числа. Определить вид треугольника, если он существует (равносторонний, равнобедренный, разносторонний), длины сторон которого равны введенным числам.
10. Даны три целых числа. Найти среднее из них. Средним назовем число, которое больше наименьшего из данных чисел, но меньше наибольшего.
11. Составьте программу для определения вида параллелограмма по прилежащим сторонам a, b и углу между ними х (в градусах). Определить один из видов: ромб, прямоугольник, квадрат, параллелограмм общего вида.
12. Составьте программу для определения вида четырехугольника, у которого две стороны параллельны. Определить по двум прилежащим к одной из параллельных сторон углам х и y, к какому из четырех видов относится четырехугольник: обыкновенная трапеция, прямоугольная трапеция, равнобедренная трапеция, прямоугольник, параллелограмм.
13. Составить программу определения стоимости разговора по телефону с учетом скидки 20%, предоставляемой по субботам и воскресеньям. Минута разговора стоит 2,3 руб. Входными данными являются n – номер дня недели (1 – понедельник и т.д.) и k – количество минут разговора.
14. Посчитать сумму только положительных из трех данных чисел.
15. С клавиатуры вводиться два трехзначных числа. Возвести первое число в квадрат, а из второго извлечь квадратный корень, если хотя бы у одного из чисел средняя цифра четная. В противном случае из первого числа извлечь квадратный корень, а второе возвести в квадрат. Вывести измененные числа на экран.
16. Дано двузначное число. Составить программу определения, является ли сумма его цифр двузначным числом. Если нет, то через сколько чисел встретится первое двузначное число, удовлетворяющее этому условию.
17. Даны три переменные: X, Y, Z. Если их значения упорядочены по убыванию, то удвоить их; в противном случае заменить значение каждой переменной на противоположное.
18. Даны три переменные: X, Y, Z. Если их значения упорядочены по возрастанию или убыванию, то удвоить их; в противном случае заменить значение каждой переменной на противоположное.
19. Даны целочисленные координаты точки на плоскости. Если точка не лежит на координатных осях, то вывести 0. Если точка совпадает с началом координат, то вывести 1. Если точка не совпадает с началом координат, но лежит на оси 0X или 0Y, то вывести соответственно 2 или 3.
20. Дан номер некоторого года (положительное целое число). Вывести соответствующий ему номер столетия, учитывая, что, к примеру, началом 20 столетия был 1901 год.
21. Дан номер некоторого года (положительное целое число). Вывести число дней в этом году, учитывая, что обычный год насчитывает 365 дней, а високосный – 366 дней. Високосным считается год, делящийся на 4, за исключением тех годов, которые делятся на 100 и не делятся на 400 (например, годы 300, 1300 и 1900 не являются високосными, а 1200 и 2000 – являются).
22. Дано целое число, лежащее в диапазоне от –999 до 999. Вывести строку – словесное описание данного числа вида «отрицательное двузначное число», «нулевое число», «положительное однозначное число» и т.д.
23. Дано целое число, лежащее в диапазоне от 1 до 9999. Вывести строку – словесное описание данного числа вида «четное двузначное число», «нечетное четырехзначное число» и т.д.
24. Телефонная компания взимает плату за пользование телефонной линией по следующему тарифу: до 120 минут разговоров включительно входит в абонентскую плату 100 рублей, за каждую минуту свыше 120 до 300 минут включительно – по 1 рублю, свыше 300 минут – по 1,5 рубля за минуту. Определите размер телефонной платы за n минут разговора.
25. Определите оценку (5, 4, 3, 2) за экзамен по математике по следующей шкале: 80 – 100 баллов – «5», 55 – 79 баллов – «4», 30 – 54 баллов – «3», остальное соответствует «2». Входными данными является количество набранных баллов b.
26. Решите уравнение вида cos x =a относительно х. Входным данным является значение а.
27. Найдите число решений системы в зависимости от параметров a и b:
28. Решите уравнение вида относительно х. Входным данным является значение а.








Дата добавления: 2015-02-16; просмотров: 1055;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.012 сек.