Expression syntax как исправить? - C (СИ)
Формулировка задачи:
//---------------------------------------------------------------------------
#include <stdio.h>
#include <windows.h> // chartooem
#define max 20
#define bool char
#define true 1
#define false 0
void main()
{
int M[max][3];
char str[50];
int i, j, p, size;
bool found;
do
{
CharToOem("\n Количество прямых (от 3 до %d): ", str);
printf(str, max);
scanf("%d",&size);
}
while((size<3)||(size>max));
for (i = 0; i < size; i++)
{
CharToOem("\nПрямая %d: \n", str);
printf(str, i+1);
CharToOem("1-й коэффициент: ", str);
printf(str);
scanf("%d",&M[i][1]);
CharToOem("\n2-й коэффициент: ", str);
printf(str);
scanf("%d", &M[i][2]);
CharToOem("\n3-й коэффициент: ", str);
printf(str);
scanf("%d",&M[i][3]);
}
found = false;
for (i = 0; i < size-2; i++)
for (j = i+1; j < size-1; j++)
for (p = j+1; p < size; p++)
// если прямые не параллельны
if (M[i][1]*M[j][2]-M[j][1]*M[i][2] != 0) &&
(M[i][1]*M[p][2] - M[p][1]*M[i][2] != 0)&&
// ищем точку пересечения
((M[i][2]*M[j][3] - M[j][2]*M[i][3])/(M[i][1]*M[j][2] - M[j][1]*M[i][2] =
(M[i][2]*M[p][3] - M[p][2]*M[i][3])/(M[i][1]*M[p][2] - M[p][1]*M[i][2]))
/*then*/
{
found := true;
CharToOem("Прямые %d (%dx + %dy = %d)", str);
printf(str, i, M[i][1],M[i][2],M[i][3]);
CharToOem("7%d (%dx + %dy = %d)", str);
printf(str, j, M[j][1],M[j][2],M[j][3]);
CharToOem("7%d (%dx + %dy = %d)", str);
printf(str, p, M[p][1],M[p][2],M[p][3]);
}
}Решение задачи: «Expression syntax как исправить?»
textual
Листинг программы
...M[j][1]*M[i][2] == (M[i][2]*M[p][3]...//2 знака равно