Foros del Web » Programación para mayores de 30 ;) » C/C++ »

Cuadrados en C

Estas en el tema de Cuadrados en C en el foro de C/C++ en Foros del Web. Buenas, tengo un problema en el que me tienen que pedir el caracter a introducir, y cuantos cuadrados de alto y ancho quiero que hayan.Quedaria ...
  #1 (permalink)  
Antiguo 11/12/2009, 13:32
 
Fecha de Ingreso: noviembre-2009
Mensajes: 14
Antigüedad: 14 años, 5 meses
Puntos: 0
Cuadrados en C

Buenas, tengo un problema en el que me tienen que pedir el caracter a introducir, y cuantos cuadrados de alto y ancho quiero que hayan.Quedaria una cosa asi:

Introduce caracter: a

Introduce cuadrados por altura: 3
Introduce cuadrados por anchura: 2
aaaaaa
a aaa a
aaaaaa
a aaa a
aaaaaa
a aaa a
aaaaaa

Nota: Los cuadrados son los huecos blancos que hay

Espero que me podais ayudar , porque yo no tengo manera de sacar eso
  #2 (permalink)  
Antiguo 11/12/2009, 14:46
 
Fecha de Ingreso: noviembre-2009
Mensajes: 14
Antigüedad: 14 años, 5 meses
Puntos: 0
Respuesta: Cuadrados en C

Me falta poco de codigo aver si me podeis ayudar:

Código:
#include <stdio.h>
#include <stdlib.h>

int main()
{
    char caracter;
    int i,j,can,cal;


    printf("Introduce caracter: ");
    scanf("%c", &caracter);
    printf("Introduce cuadrados por altura: ");
    scanf("%i", &cal);
    printf("Introduce cuadrados por ancho: ");
    scanf("%i", &can);


    i=0;j=0;
    if (can==1)
    {
        for(i=1; i<=cal; i++)
        {
            printf("%c\n",caracter);
            printf("" "\n");
            printf("%c\n",caracter);
        }
    }
    else
    {
        for(i=1;i<=cal;i++)
        {

            if(i==1)
            {
            printf("%c\n",caracter);
            }

            for(j=1;j<=can;j++)
            {
            printf("%c ",caracter);

            if(j==can)
            {
                printf("%c\n",caracter);
            }
            }
            printf("%c",caracter);
            printf("\n");
        }
    }

    return 0;
}
Este codigo que tengo llega hasta:
Introduce caracter: a
Introduce cuadrados por alto: 2
Introduce cuadrados por ancho: 3

a
a a a a
a
a a a a
a

Aver si me podeis ayudar para poner el ancho sobrante plis. Como deberia de quedar realmente seria:

Introduce caracter: a
Introduce cuadrados por alto: 2
Introduce cuadrados por ancho: 3

aaaaaa
a a a a
aaaaaa
a a a a
aaaaaa

Última edición por er_chaval; 11/12/2009 a las 16:03
  #3 (permalink)  
Antiguo 19/12/2009, 10:36
 
Fecha de Ingreso: junio-2008
Ubicación: Rosario siempre estuvo cerca
Mensajes: 14
Antigüedad: 15 años, 10 meses
Puntos: 2
Respuesta: Cuadrados en C

No entiendo que querés hacer. Vos querés que se forme un rectángulo o cuadrado introduciendo por teclado el alto y el ancho del mismo además del caracter que lo formará? Bueno, si es así yo pensé en algo así para poner después del ingreso de datos:

/* ponemos el lateral de arriba */
for(j=1;j<=can;j++)
{
printf("%c",caracter);
if(can==j)
printf("\n");
}
i=1; /* ponemos los laterales de los costados */
while(i!=cal-1)
{
for(j=1;j<=cal;j++)
{
if(j==1)
printf("%c",caracter);
else if(j!=cal)
printf(" ");
else
printf("%c\n",caracter);
}
i++;
}
/* ponemos el lateral de abajo */
for(j=1;j<=can;j++)
printf("%c",caracter);

Logicamente se puede mejorar.

Última edición por pajarito2008; 20/12/2009 a las 16:23
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:38.