[ Foro de C# ]

(3.2.2.6)

18-Aug-2020 16:01
Invitado (Gyle)
3 Respuestas

(3.2.2.6) Crea un programa que "dibuje" la gráfica de y = (x-5)2 para valores de x entre 1 y 10. Deberá hacerlo dibujando varios espacios en pantalla y luego un asterisco. La cantidad de espacios dependerá del valor obtenido para "y".

Estoy con este ejercicio y no me lo puedo resolver.
Ayuda por favor.


18-Aug-2020 16:59
Nacho Cabanes (+83)

Incluye lo que has hecho hasta ahora, y te ayudo a completarlo.


18-Aug-2020 21:50
Invitado (Gyle)

 


using System;
public class new09
{
	public static void Main()
	{
	
	
	double z = 5;
	double x = 0;
	double i = (x-z);
	double y = Math.Pow(i , 2);
	
	    Console.Write("---------------------------------------------");
		Console.Write("\n\n");  
		
	Console.WriteLine("Introduzca un numero entre 1-10");
	x = Convert.ToInt32(Console.ReadLine());
	
	for (x = 0; x < 10; x++)
		
	{
		for ( y = 0; y < 10; y++)
		{
		Console.WriteLine("*");
		}
		Console.WriteLine("\n");
	}
	
	
	
	}
}	



La verdad ya estoy buscando bastante ejemplos, y no encontre nada igual de lo que me esta pidiendo. Y una cosa, gracias por contestar.
Llevo semanas estudiando el libro de usted. Lo estan usando como material en mi curso de FP superior.


19-Aug-2020 16:16
Nacho Cabanes (+83)

Tienes varios errores:

- No necesitas pedir datos
- x comienza en 1
- El valor de "y" no debe llegar hasta 10, sino que debes calcularlo
- No debes avanzar de línea tras escribir cada asterisco, sino después de todos ellos.

Sería algo así:


using System;

class Grafica
{
    static void Main()
    {
        for (int x = 1; x < 10; x++)
        {
            int y = (x-5) * (x-5);
            for ( int posicion = 0; posicion < y; posicion++)
            {
                Console.Write("*");
            }
            Console.WriteLine();
        }
        
    }
}   


 






(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)