Forum » Programiranje » c# seminarska
c# seminarska
tuned ::
Imam nardit seminarsko pri programiranju C# na VSŠ, nardit moram program v konzoli z uporabo tabel, razredov, objektov, uporabljanje datotek... Pa me zanima če je kdo že delal kaj podobnega, in mi lahko pošlje programsko kodo da si ogledam za primer.
def0r ::
Nebi raje povedal kje se ti je zataknilo? Ker s temi navodili lahko naredis.. ogromno stvari.
tuned ::
Naredil bi cisto preprosti program za ugibanje števil. Nevem kako oz. mi ne rata narediti tako da bi na koncu programa lahko izbral za nadaljevanje in izhod, in bi se ob nadaljevanju zabeležil novi igralec, na koncu se vsi igralci zapišejo v podano datoteko(sedaj se mi zapisi v datoteko sproti brišejo ob ponvnem igranju). in pa da se naredi tabelo v kateri so zabeležni vsi dosedanji igralci in število ugibanj, tabela je prikazana nekako ob strani v konzolnem oknu.
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.IO; namespace TEST { public class igralec { public string ime; public string priimek; } class Program { static void Main(string[] args) { Console.Write("Ime: "); string ime = Console.ReadLine(); Console.Write("Priimek: "); string priimek=Console.ReadLine(); igralec i = new igralec(); i.ime = ime; i.priimek = priimek; StreamWriter pisi = File.CreateText("TEST.txt"); const int MAX_NUMBER = 10; Random random = new Random(); int steviloZaUgibanje = random.Next(MAX_NUMBER) + 1; int igralcevUgib = 0; int ugibanja = 0; Console.WriteLine("Dobrodošli v igri 'Ugani število'"); Console.WriteLine("Število je med 1 in {0}.", MAX_NUMBER); while (igralcevUgib != steviloZaUgibanje) { ugibanja++; Console.Write("Vpiši svoje število: "); int.TryParse(Console.ReadLine(), out igralcevUgib); if (igralcevUgib > steviloZaUgibanje) { Console.WriteLine("Število {0} je preveliko!", igralcevUgib); } else if (igralcevUgib < steviloZaUgibanje) { Console.WriteLine("število {0} je premajhno!", igralcevUgib); } else { Console.WriteLine("Število {0} je pravo. Čestitke! ", igralcevUgib); Console.WriteLine("Igralec "+i.ime+" "+i.priimek+" je uganil število v {0} poskusih", ugibanja); pisi.WriteLine("Igralec: "+i.ime+" "+i.priimek+", Število poskusov: "+ugibanja); pisi.Close(); } } Console.ReadKey(); } } }
Yacked2 ::
Kolikor se spoznam na javo bi bilo bolje če bi v objektu naredil še geterje in setterje (verjetno je v C# isto, sem naredil samo za ime)
public class igralec { PRIVATE string ime; PRIVATE string priimek; public static String GetIme() { return this.ime; } public static void SetIme(String name) { ime = name; } }
Korak naprej ni vedno ustrezen...sploh če si na robu prepada!
Zgodovina sprememb…
- spremenil: Yacked2 ()
tuned ::
če dodam nalednjo kodo mi zapiše v datoteko samo prvič in za enega igralca, naslednjič ko zaženem program noče več pisati v datoteko, zakaj?
string dat = @"c:\aa2.txt"; if (!File.Exists(dat)) { using (StreamWriter pisi = File.AppendText(dat)) { pisi.WriteLine("aaaa" + i.ime + ugibanja); } }
vorantz ::
Kolikor se spoznam na javo bi bilo bolje če bi v objektu naredil še geterje in setterje (verjetno je v C# isto, sem naredil samo za ime)
public class igralec
{
PRIVATE string ime;
PRIVATE string priimek;
public static String GetIme()
{
return this.ime;
}
public static void SetIme(String name)
{
ime = name;
}
}
v c# maš propertyje za to
public string Ime { get; set; }
Yacked2 ::
Kolikor se spoznam na javo bi bilo bolje če bi v objektu naredil še geterje in setterje (verjetno je v C# isto, sem naredil samo za ime)
public class igralec
{
PRIVATE string ime;
PRIVATE string priimek;
public static String GetIme()
{
return this.ime;
}
public static void SetIme(String name)
{
ime = name;
}
}
v c# maš propertyje za to
public string Ime
{
get;
set;
}
Potem pa to, direktni pristop do spremenljivke v objektu pa je nevarna
Korak naprej ni vedno ustrezen...sploh če si na robu prepada!
vorantz ::
Kolikor se spoznam na javo bi bilo bolje če bi v objektu naredil še geterje in setterje (verjetno je v C# isto, sem naredil samo za ime)
public class igralec
{
PRIVATE string ime;
PRIVATE string priimek;
public static String GetIme()
{
return this.ime;
}
public static void SetIme(String name)
{
ime = name;
}
}
v c# maš propertyje za to
public string Ime
{
get;
set;
}
Potem pa to, direktni pristop do spremenljivke v objektu pa je nevarna
Lahko tudi tako
private string _ime; public string Ime { get{return _ime;} set{_ime = value;} }
Kar je v osnovi isto kot tvoje prej, samo je sintaksa precej lepša (napram javi)
Zgodovina sprememb…
- spremenil: vorantz ()
tuned ::
Ok samo še eno stvar moram naredit. Kako bi z datoteke prebral besede v tabelo, in to tabelo potem prikazal v konzoli? V datoteki so vnosi taki kot npr: aaaa: aaa ; bbbb: 1 ; cccc
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | [Java] Sortiranje razredovOddelek: Programiranje | 1453 (1200) | Spura |
» | [C#] DeserializacijaOddelek: Programiranje | 1864 (1467) | Cvenemir |
» | [C#] Kopiranje osebe iz seznama v drug seznamOddelek: Programiranje | 1496 (1357) | Presidente |
» | Povezani seznamOddelek: Programiranje | 2109 (1706) | pohano |
» | [c#] Napačen izpis -- prazni stringiOddelek: Programiranje | 1529 (1471) | Spura |