Red de conocimientos sobre prescripción popular - Remedios caseros - Pregunta en lenguaje C: área del tumor, ¡resuélvela! A continuación, daré el código en el entorno C ++ 6.0. ¡Dime cómo escribir un C simple!

Pregunta en lenguaje C: área del tumor, ¡resuélvela! A continuación, daré el código en el entorno C ++ 6.0. ¡Dime cómo escribir un C simple!

Idea 1: según la descripción del problema, el resultado existe en un rectángulo paralelo al borde de la matriz de entrada, es decir, solo la coordenada inicial de la esquina superior izquierda es la más pequeña y la coordenada final de la esquina inferior derecha es el más grande, por lo que al ingresar datos, podemos juzgar y obtener dos puntos Las coordenadas simultáneas (ubicadas en el límite del tumor) luego calculan directamente el área cubierta por el límite.

Plan idea 1:

#Definición número 100

int main(int argc, char *argv[])

{

int kk = 0;

int tamañop, I, j;

int PosX_str = N, PosY_str = N, PosX_end = 0, PosY_end = 0 ;

//Las coordenadas del punto inicial superior izquierdo (inicio) y el punto final inferior derecho (final) del rectángulo.

int Dat[100][100];

scanf("%d ", & ampsizep

for(I = 0; i & ltsizep); ++i)

{

for(j = 0; j & ltsizep++j)

{

scanf(" %d ", & ampdat[I][j]);

If(0 == Dat[i][j]) // es el punto límite rectangular.

{

If ((i & ltPosX _ str)| |(j & lt;PosY_str)) // ¿Las coordenadas del punto son "más pequeñas" que el punto inicial?

{

PosX _ str = I

PosY _ str = j

}

Si ((i & gtPosX _ end)| |(j & gt;PosY_end)) // ¿Las coordenadas del punto son "más grandes" que el punto final?

{

PosX_end = I;

PosY_end = j

}

}

}

}

//printf("X_str = %d Y_str = %d\n ", PosX_str, PosY _ str

//printf("X_end = %d Y_end = %d\n ", PosX_end, PosY _ end

printf("NUM = %d\n ", (PosX _ end); -PosX _ str-1)*(PosY _ end-PosY _ str-1));

Sistema("pausa");

Return 0; p>}

Idea 2:

Durante la entrada, determine directamente el número 255 dentro del rectángulo del tumor.

Descripción del programa: si la entrada actual es 255, determine el bit de bandera (el bit de bandera indica si la entrada actual está dentro del rectángulo del tumor. Si el bit de bandera es legal, acumule; de ​​lo contrario, el bit de bandera). es ilegal.

De esta manera, cada dato de entrada se juzga directamente. Cuando se completa la entrada de datos, el problema se resuelve;

No se dan los procedimientos específicos.