2010-09-03 8 views
0

c'est la première fois l'affichage de mon problème ici, j'espère obtenir de l'aide :)simples méthodes statiques (console) aider

Mon problème:

Je suis en train d'afficher le « This Old Man » (deux premières strophes seulement) dans la console. Je commence à apprendre des méthodes, alors s'il vous plaît, supportez ma nbitude.

la chanson:

This old man, he played one 
He played knick−knack on my thumb 
With a knick−knack paddy−whack 
Give a dog a bone 
This old man came rolling home 


This old man, he played two 
He played knick−knack on my shoe 
With a knick−knack paddy−whack 
Give a dog a bone 
This old man came rolling home 

I codé les suivantes:

namespace Song 
{ 
    class Song 
    { 
     static void Main(string[] args) 
     { 
      doVerse(1); 
      doChorus(); 
     } 
     static void doChorus() 
     { 
      Console.WriteLine("With a knick−knack paddy−whack"); 
      Console.WriteLine("Give the dog a bone"); 
      Console.WriteLine("This old man came rolling home"); 
      Console.WriteLine(); 
      Console.ReadLine(); 
     } 
     static void doVerse(int verseNum) 
     { 
      string message = ""; 
      message += "This old man, he played "; 
      message += verseNum; 
      message += ". \nHe played knick−knack "; 
      //message += getPlace(verseNum); 
      Console.WriteLine(message); 
     } 
     static void getPlace() 
     { 
      string message = ""; 
      switch (verseNum) 
      { 
       case 1: 
        message = "on my thumb "; 
        break; 
       case 2: 
        message = "on my shoe"; 
        break; 
       default: 
        message = "not yet defined"; 
        break; 
      } 
      return message; 
     } 
    } 
} 

Visual Studio me donne les erreurs suivantes:

http://i56.tinypic.com/fx850m.jpg

J'espère que vous comprenez mon intention avec ce programme.

Merci

Cordialement,

Kyle: D

+1

Quelle est votre question? – ChrisW

+1

Alors, quelle est la question? – DHN

+2

On dirait que 'getPlace' a besoin de' int verseNum' comme paramètre – mikej

Répondre

0

Changer votre méthode getPlace à ceci:

static string getPlace(int verseNum) 
{ 
    string message = ""; 
    switch (verseNum) 
    { 
     case 1: 
      message = "on my thumb "; 
      break; 
     case 2: 
      message = "on my shoe"; 
      break; 
     default: 
      message = "not yet defined"; 
      break; 
    } 
    return message; 
} 

Je devine que c'est des devoirs, donc je vais expliquer pourquoi ça ne fonctionnait pas. Vous avez eu deux erreurs:

  1. vous êtes méthode a été définie sur static void et que vous essayez de retourner un string. Vous avez dû remplacer void par string pour indiquer que la méthode renvoie un string.
  2. Vous utilisiez une variable appelée verseNum qui était absente de la méthode. Pour passer dans la variable, vous devez inclure dans la signature de la méthode.
+0

Merci GenericTypeTea! Travaillé! je commence à saisir ces maintenant :) – kylebriffa7

+0

btw ce n'est pas devoirs: \ pourquoi tout le monde dit cela? J'essaie d'apprendre de divers sites SUR MON PROPRE pour que l'école commence je serai familier avec ceux-ci, c'est tout: \ – kylebriffa7

+0

Parce que d'habitude les gens sont paresseux et ne font rien s'ils ne sont pas obligés par devoir. Ainsi la supposition. Ne vous inquiétez pas à ce sujet;) – digEmAll

Questions connexes