1. Составить и проверить функцию, которая в текстовом режиме с помощью символов псевдографики рисует границу прямоугольника, не заполняя его внутреннюю область.
void ramka (int x0, int y0, int, int);
int main ()
{ ramka (2,5, 10, 30); getch(); return 0;
}
void ramka (int x0, int y0, int n1, int n2)
{ int x,y,i; x=x0; y=y0;
gotoxy(x,y++); printf("%c",218); // символ левого верхнего угла
for (i=0;i<n1-2;i++)
{ gotoxy(x,y++); printf("%c", 179); // для вертикальной линии
}
gotoxy(x++,y); printf("%c",192); // левый нижний угол
for (i=0;i<n2-2;i++)
{ gotoxy(x++,y); printf("%c",196); // для горизонтальной линии
}
gotoxy(x,y--); printf("%c",217); // правый нижний угол
for(i=0;i<n1-2;i++)
{ gotoxy(x,y--); printf("%c",179);
}
gotoxy(x--,y); printf("%c",191); // правый верхний угол
for(i=0;i<n2-2;i++)
{ gotoxy(x--,y); printf("%c",196);
}
}
Коды всех символов, в том числе и символов псевдографики, можно вывести с помощью следующей программы:
main()
{ clrscr(); textcolor(2);
for (int i=1; i<256; i++)
{ cprintf("%4d",i); printf("%c%c" , i, i%12?' ':'\n');
}
getch(); return 0;
}
Здесь по формату "%4d” выводим код символа указанным в textcolor вторым цветом, а по формату "%c” выводим символ с этим кодом цветом по умолчанию. При этом если i кратно 12, то выполняется переход на следующую строку экрана.
2. Составить функцию для нахождения действительных корней квадратного уравнения a∙x2 + b∙x + c =0. Используя ее, составить и проверить функцию решения биквадратного уравнения a∙z4 + b∙z2 + c =0.
3. Составить и проверить функцию решения линейного уравнения вида a∙x=b.
4. Вывести n параллельных горизонтальных линий разными цветами. Составить и использовать функцию для рисования одной горизонтальной линии.
5. Вывести n параллельных вертикальных линий разными цветами. Составить и использовать функцию для рисования одной вертикальной линии.
6. В текстовом режиме заполнить все окно вывода следующими фигурами, не заполняя их внутри:
a) ромбами;
б) равнобедренными треугольниками;
в) прямоугольными треугольниками с прямым углом внизу слева;
г) прямоугольными треугольниками с прямым углом внизу справа.
Составить и использовать функцию для рисования границы одной фигуры в зависимости от варианта.
7. В текстовом режиме нарисовать последовательность заполненных внутри прямоугольников, разместив их одним из следующих способов:
а) по диагонали окна, начиная с левого верхнего угла;
б) по диагонали окна, начиная с левого нижнего угла;
в) в шахматном порядке.