2016-01-08 1 views
-3

Je souhaite placer une instruction de boucle autour du code ci-dessous. Actuellement, il calcule la zone de cercle, carré et rectangles. Je veux mettre une instruction do while qui permet de vérifier à partir d'une sélection. Lorsque la personne sélectionne les formes, insère les côtés des formes (rayon si cercle) puis calcule l'aire, le périmètre et les dimensions. S'il vous plaît aidez.Comment placer des instructions de boucle C# dans des applications de console: Formes rectangle, cercle et carré

namespace ShapeCalc 
{ 
    class CalcAvgPerc 
    {    
     public float length, breadth, radius, side, hieght, breadthfortriangle; 
     static void Main(string[] args) 
     { 
      CalcAvgPerc a = new CalcAvgPerc## Heading ##(); 
      a.Rectangle(); 
      a.Circle(); 
      a.Square(); 
      a.Triangle(); 
      Console.ReadKey(); 
     } 
     public void Rectangle() 
     { 
      Console.WriteLine("Enter the Length for Rectangle"); 
      length = float.Parse(Console.ReadLine()); 
      Console.WriteLine("Enter the breadth for Rectangle"); 
      breadth = float.Parse(Console.ReadLine()); 
      System.Threading.Thread.Sleep(2000); 
      Console.WriteLine("Area of rectangle is :{0}", length * breadth); 
     } 
     public void Circle() 
     { 
      Console.WriteLine("Enter the Radius of the Circle"); 
      radius = float.Parse(Console.ReadLine()); 
      System.Threading.Thread.Sleep(2000); 
      Console.WriteLine("Area of Circle is:{0}", 3.14 * radius * radius); 
     } 
     public void Square() 
     { 
      Console.WriteLine("Enter the side of a square"); 
      side = float.Parse(Console.ReadLine()); 
      System.Threading.Thread.Sleep(2000); 
      Console.WriteLine("Area of Square is:{0}", side * side); 
     } 
     public void Triangle() 
     { 
      Console.WriteLine("Enter the Breadth for Triangle "); 
      breadthfortriangle = float.Parse(Console.ReadLine()); 
      Console.WriteLine("Enter the Hieght for Triangle "); 
      hieght = float.Parse(Console.ReadLine()); 
      System.Threading.Thread.Sleep(2000); 
      Console.WriteLine("Area of Triangle is:{0}", (breadthfortriangle * hieght)/2); 
     } 
    } 
} 
+0

Bonjour, bienvenue dans StackOverflow. La prochaine fois s'il vous plaît préciser ce que vous avez essayé et ce qui ne fonctionne pas plutôt que de nous demander simplement d'écrire le code. Fondamentalement, ce que vous voulez faire ici est d'ajouter une boucle while do dans la fonction principale qui vérifie la clé de lecture à la fin de vos fonctions. Si la touche suivante n'est pas 'Q' pour quitter, par exemple, vous voulez continuer et répéter le tout. En outre, vos formes ne sont pas des objets de «forme», ce sont juste des méthodes qui posent des questions liées à la forme. – gitsitgo

+0

Vous devriez être plus clair sur le résultat final que vous envisagez et ce que vous avez essayé. Si c'est le devoir (cela semble être le cas) C'est OK, mais vous devez mentionner explicitement que les différentes normes de la communauté s'appliquent (http://stackoverflow.com/help/on-topic) Etre clair sur les actions que l'utilisateur va prendre, et ce que le code fera aidera toutes les personnes impliquées. – user314321

+0

Si je peux clarifier la question fait partie d'un devoir qui m'a été donné: "Écrivez un programme basé sur la classe qui permet à l'utilisateur de sélectionner et de créer plusieurs types de formes: cercles, triangles, carrés et rectangles. et faire un rapport sur leur position, dimensions, surface, périmètre et ainsi de suite, et des méthodes Overlaps surchargées pour vérifier si n'importe quelle forme chevauche une autre. " Le but de l'écrire dans une déclaration en boucle. – user3821872

Répondre

2

Vous ne savez pas ce que vous voulez faire ... quelque chose comme ça?

static void Main(string[] args) 
{ 
    alcAvgPerc a = new CalcAvgPerc(); 
    while (true) 
    { 
     Console.WriteLine("Select Shape: (R)ectangle, (C)ircle, (S)quare, (T)riangle:"); 
     var key = Console.ReadKey(); 
     switch (key.Key) 
     { 
      case ConsoleKey.R: 
       a.Rectangle(); 
       break; 
      case ConsoleKey.C: 
       a.Circle(); 
       break; 
      case ConsoleKey.S: 
       a.Square(); 
       break; 
      case ConsoleKey.T: 
       a.Triangle(); 
       break; 
      case ConsoleKey.Escape: 
       Console.WriteLine("Exiting...") 
       return; 
     } 
    } 
} 
+0

Si je peux clarifier la question fait partie d'un devoir qui m'a été donné: "Ecrire un programme de classe qui permet à l'utilisateur de sélectionner et de créer plusieurs types de formes: cercles, triangles, carrés et rectangles Inclure des méthodes pour définir et déclarer sur leur position, dimensions, surface, périmètre et ainsi de suite, et Overlaps surchargés méthodes pour vérifier si une forme chevauche une autre. " Le but de l'écrire dans une déclaration en boucle. – user3821872

+0

Ce n'est pas une question, c'est un petit projet et il y a plusieurs points à traiter. – nuno

+0

essentiellement je veux écrire une déclaration en boucle pour l'application console. L'énoncé de cas devrait permettre à la personne de choisir un cercle, un carré ou un rectangle. Une fois que cela arrive, permettez à l'utilisateur d'écrire les dimensions. Troisièmement, il devrait calculer le périmètre, la zone et afficher en conséquence. – user3821872