Red de conocimiento informático - Descarga de software - Utilice los símbolos "□"■" para dibujar cuadrados y diagonales cuadradas en lenguaje C.

Utilice los símbolos "□"■" para dibujar cuadrados y diagonales cuadradas en lenguaje C.

// ¿Eclipsar C++? ¿Y código::Bloquear? Depurar mediante

//¿Proporcionar un menú simple a la consola y? Salida cuadrada y rectangular.

//La salida diagonal del rectángulo es inestable (la discretización de ecuaciones geométricas requiere un algoritmo más complejo, por lo que es más profundo). Se puede utilizar cuando el largo y el ancho son mayores.

//Una ventana con una longitud de lado de aproximadamente 32 no se puede mostrar por completo.

#¿Incluir? & ltiostream & gt

#Contiene? & ltstdlib.h & gt

#¿Incluir? & ltstdio.h & gt

¿#Contiene? & ltconio.h & gt

¿Usar? ¿Espacio de nombres? std

//?func? Declaración-

¿No es válida? set_prefix_str(char * &?str,?int?line.char?ch);

¿No es válido? println_str(const?char*?str);

¿No es válido? print_pix(const?char*?str);

int? print_rectangle(float? rectX, float? rectY);

//?gloabl? -

¿constante? carbonizarse*? ¿PIX0? =?"□";

constante? carbonizarse*? ¿PIX1? =?"■";

int? Ryan. =?8;

carácter*? ¿Prefijo? =?NULL

//?¿Principalmente? ¿menú? -

int? main()

{

¿Flotador? rectX

¿Flotar? recY

int? ¿Opciones? =?-1;

Establecer cadena de prefijo (?prefijo,?línea.'?'?);

¿Y (1)? {

System("cls");

println _ str(" ");

println _ str(" ");

println_str("¿Imprimir? Rectángulo");

println _ str(" ");

println _ str(" "); "[1]? ¿Imprimir? Cuadrado");

println_str("[2]"? ¿Imprimir? Rectángulo (inestable)");

println_str("[3]? Configuración ");

println _ str(" ");

println_str("[0]? Salir");

println _ str(" " ) ;

Opciones? =?getch();

println _ str(" ");

Si (?Opciones?<?'0 '? ¿O?>?'?{

Continuar;

Si (' 0 ' = = opción) ? {

Romper;

}

if? (' 3 ' = opción)? {

Print_pix("establecer sangría izquierda: ");

CIN>>LEN

Establecer cadena de prefijo (?prefix,?len.

'?'? );

Continuar;

}

¿Y si? ('1' == opción)? {

Print_pix("Longitud del lado cuadrado:");

CIN>>rectY? rectX = rectY

println _ str(" ");

}

¿Si? ('2' = =opción)? {

Print_pix("Longitud del rectángulo:");

CIN>& gtrectX

println _ str(" ");

Print_pix("Altura del rectángulo:");

CIN & gt; & gtrectY

println _ str(" ");

}

p>

¿Y si? (¿rectX & lt0? ¿O? rectX & gt64)?{

Println _ str("Rango de parámetros x incorrecto");

System("pausa");

Continuar;

}

¿Y si? (¿rectY & lt0? ¿O? rectY & gt64)?{

Println_str("Error de rango de parámetro Y");

System("pausa");

Continuar;

}

system("cls");

println _ str(" ");

print_rectangle(rectX , rectY);

println _ str(" ");

Sistema("pausa");

Continuar;

}

¿Volver? 0;

}

//?¿Herramientas? -

¿Anulado? println_str(const?char*?cadena)? {

cout & lt& lt? str<<? endl<<? prefijo;? //?¿aún? ¿usar? ¿imprimir? ¿A dónde ir? Imprimir

}

¿Nulo? print_str(const?char*?cadena)? {

cout & lt& lt? str<<? prefijo;? //?¿aún? ¿usar? ¿imprimir? ¿A dónde ir? Imprimir

}

¿Nulo? print_pix(const?char*?cadena)? {

cout & lt& lt? cadena? //?¿aún? ¿usar? ¿imprimir? ¿A dónde ir? Imprimir

}

¿Nulo? set_prefix_str(char *&?str,?int?line.char?ch)? {

¿Y si? (?str?)?{

Gratis (str);

}

//¿Usar? ¿Nuevo? ¿aún? Mallock

cadena? =?(carácter*)? malloc(?sizeof(char)*(len+1)?);

//¿Nuevo? char[](len+1)

//delete[](str)

¿Para qué? (int?i?=?0;?i?<?len?++i)? {

cadena[i]? =?ch;

}

str[len]? =?'\0';

}

int? print_rectangle(¿flotante?rectX,?flotante?rectY)? {

int? maxX? =?(int)(rectX);

int? Máx.

=?(int)(rectY);

//¿Ecuación diagonal? ¿y? =?kx? +?b

//¿Regla cuadrada? k? =?+/-1

¿Flotante? k1? =?maxY/(float)(maxX);

¿Flotador? k2? =?-maxY/(float)(maxX);

int? ¿Contar? =?0;

¿Para qué? (int?y?=?0;?y?<=?maxY?++y)? {

¿Para qué? (int?x?=?0;?x?<=?maxX?++x)? {

//Ecuación horizontal

¿Y si? (0==y? ¿O? maxY==y)? {

imprimir _ pix(pix 1);

++ recuento;

Continuar;

}

//Ecuación vertical

¿Y si? (0==x? O? maxX==x)? {

imprimir _ pix(pix 1);

++ recuento;

Continuar;

}

//Ecuación diagonal? ¿y? =?kx? +?b

¿Y si? ((int)(k1*x)==y? ¿O? (int)(k2*x)+maxY==y)? {

imprimir _ pix(pix 1);

++ recuento;

Continuar;

}

print _ pix(pix 0);

++ recuento;

Continuar

}

println _ str(" " );

}

¿Volver? Contar;

}