Witam, piszę program zbierający dane kontaktowe znajomych i jako, że dopiero uczę się programowania w CiSzarpie nie mam pojęcia jakich zmiennych użyć aby program zbierał te dane tak jakby w pętli do momentu podania przez użytkownika komendy “koniec” oraz by przechodził do początku pętli po podaniu komendy “dalej”.
Wszystko co ma się powtarzać w pętelkę z warunkiem logicznym, if’y z użyciem https://msdn.microsoft.com/pl-pl/library/858x0yyx(v=vs.110).aspx do sprawdzenia czy dalej czy koniec. Całego rozwiązania nie dostaniesz, bo to tak prosty i podstawowy przypadek że musisz sam to ogarnąć żeby ruszyć dalej z nauką.
Jeśli wrzucę wszystko w If’a to nawet na początku będzie wymagał wpisania komendy odpowiedzialnej za powtarzanie funkcji.
do
{
}while(cmd != "koniec")
Tak jak napisał wyżej Fizyda - taka pętla wpierw robi instrukcje a dopiero potem sprawdza warunek.
Mam kolejny problem dotyczący innego zadania.
while (start != "start") ;
{
StreamWriter Dziennik = new StreamWriter("asdf.txt");
Dziennik.WriteLine("Captain’s log");
Dziennik.WriteLine("Stardate" + " " + thisDay.ToString("d"));
Dziennik.WriteLine(Console.ReadLine());
Dziennik.WriteLine("Jean-Luc Picard");
end = Console.ReadLine();
Dziennik.Close();
}
while (end != "koniec") ;
Nie ma takiej pętli w żadnym języku.
Albo do{…}while() albo while(){}.
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Write 'start'...");
var start = Console.ReadLine();
if (start != null && start.Equals("start", StringComparison.OrdinalIgnoreCase))
AddToLog("asdf.txt");
}
private static void AddToLog(string logFile)
{
var thisDay = DateTime.Today;
using (var log = new StreamWriter(logFile))
{
Console.WriteLine("Captain’s log");
log.WriteLine("Captain’s log");
Console.WriteLine("Stardate" + " " + thisDay.ToString("d"));
log.WriteLine("Stardate" + " " + thisDay.ToString("d"));
while (true)
{
var line = Console.ReadLine();
if (!string.Equals(line, "end", StringComparison.OrdinalIgnoreCase))
{
log.WriteLine(line);
}
else
{
break;
}
}
Console.WriteLine("Jean-Luc Picard");
log.WriteLine("Jean-Luc Picard");
}
}
}
Przeanalizuj sobie, zadawaj pytania.
Dziękuje za pomoc ale taka opcja rozwiązania zadania jest zbyt trudna dla mnie patrząc na to, że muszę wiedzieć dokładnie co za co odpowiada w zadaniu.