Часть 11. Решения 165^
if (а == 0) retum(-l);
d = b*b-4*a*c;
if (d < 0)
return(0); // уравнение не имеет решения
*х1 = (-b+sqrt(d))/(2*а);
*х2 = (-b-sqrt(d))/(2*a);
if (*х1 !- *х2) retum(2);
else retxim (1) ;
}
// проверка работоспособности функции
void main О
{
float a,b,с; // коэффициенты уравнения
float х1,х2; // корни уравнения
int п; // кол-во корней
puts("\пРешение квадратного уравнения");
puts("Введите в одной строке коэффициенты и нажмите\
");
printf("->");
scanf("%f%f%f", &a, &b, &c);
switch (kvadur(a,b,c,&xl, &x2))
{
case -1: puts("Ошибка исходных данных.");
break;
case 0: puts("Уравнение не имеет решения.");
break;
case 1: printf("Корни одинаковые: x=%3.2f", xl);
breaJc;
case 2: printf("xl=%3.2f x2=%3.2f", xl, x2);
}
puts("\nДля завершения работы нажмите ");
getch();
166 C/C+'f- в задачах и примерах
Задача 197
// Функция starline выводит строку из звездочек
#include "stdio.h"
#include "conio.h"
// выводит строку из звездочек
void starline{int len)
{
for (int i = 0; i < len; i++)
putch('* M;
}
void main()
(
starline(10);
puts("\nДля завершения работы нажмите ");
getch();
}
Задача 200
// Функция frame вычерчивает рамку
#include "stdio.h"
#include "conio.h"
// вычерчивает рамку
void frame(int 1, int t, int w, int h)
{
// l,t - координаты верхнего левого угла,
// vif h - ширина и высота рамки
int х,у; // координаты выводимого символа
int i;
// символы, из которых составляется рамка
char с1 == 218, // левый верхний угол
с2 = 196, // горизонтальная линия
сЗ = 191, // правый верхний угол
с4 = 179, // вертикальная линия
с5 = 192, // левый нижний угол
ев - 217; // правый нижний угол
Do'stlaringiz bilan baham: |