Forum » Programiranje » Pomoč pri programčkih
Pomoč pri programčkih

jacki ::
a bi mi lohka napisu en dva zlo kratka programčka, k rabmo za šolo
1)program, ki izpiše vse večkratnike števila 3 med naravnima št. n in m, pri čemer n in m vnesemo
2)program, ki poljubno ime napiše tako da vsak samoglasnik napiše 5x (npr. Jacki-> Jaaaaackiiiii)
pa če je lohka napisan u visual studiu, kot console aplication, pa u C#
1)program, ki izpiše vse večkratnike števila 3 med naravnima št. n in m, pri čemer n in m vnesemo
2)program, ki poljubno ime napiše tako da vsak samoglasnik napiše 5x (npr. Jacki-> Jaaaaackiiiii)
pa če je lohka napisan u visual studiu, kot console aplication, pa u C#

norcuron ::
Pri prvem programčku naredi FOR zanko, ki ti teče od n do m, znotraj zanke preverjaj ostanke pri deljenju s 3, če ni ostanka, število izpiši.
Pri drugem programčku komot ponucaš FOREACH zanko, da se ti sprehodi skozi niz ali pa FOR zanko, edino pri FOR zanki si shraniš dolžino niza, da veš koliko iteracij potrebuješ. V zanki preverjaš pač, če si naletel na samoglasnik in ga 5x ponoviš.
Problema sta tako enostavna, da ne bi smela biti problem niti za začetnika. Če pa ne poznaš strukture zank, ti jo zna VS lepo vstavit. Kar tako verjetno nisi dobil za sestavit tole brez, da bi dobil prej kakšno gradivo za pomoč. Sicer je pa C# začetniških tutorialov na netu res veliko morje.
Lenobe pač ne podpiramo, lahko pa pokažeš kaj ti je uspelo sestavit in kaj ti dela probleme.
Pri drugem programčku komot ponucaš FOREACH zanko, da se ti sprehodi skozi niz ali pa FOR zanko, edino pri FOR zanki si shraniš dolžino niza, da veš koliko iteracij potrebuješ. V zanki preverjaš pač, če si naletel na samoglasnik in ga 5x ponoviš.
Problema sta tako enostavna, da ne bi smela biti problem niti za začetnika. Če pa ne poznaš strukture zank, ti jo zna VS lepo vstavit. Kar tako verjetno nisi dobil za sestavit tole brez, da bi dobil prej kakšno gradivo za pomoč. Sicer je pa C# začetniških tutorialov na netu res veliko morje.
Lenobe pač ne podpiramo, lahko pa pokažeš kaj ti je uspelo sestavit in kaj ti dela probleme.
Great are mysteries of the mind ... or not?

Mitja Bonča ::
To je za 1. tvoje vprašanje, a bo vredu? Številka 3 je konstanta, kot si hotel, lahko se pa še naredi da jo sam vneseš!
Ok, upam da si zadovoljen:
class Program
{
static void Main(string[] args)
{
int števec = 0;
int število = 0;
int m = 0;
int n = 0;
Console.WriteLine("Programček bo izpisal vse večkratnike števila 3, za vaša izbran naravna števila!");
Popravek:
if (m == 0)
Console.WriteLine("Vpišite naravno število m:");
else if (n == 0)
Console.WriteLine("Vpišite še naravno število n:");
string odgovor = Console.ReadLine();
//preverjanje če je vneseno res število:
bool boolŠtevilo = false;
boolŠtevilo = int.TryParse(odgovor, out število);
if (boolŠtevilo)
{
if (m == 0)
{
m = število;
goto Popravek;
}
else if (n == 0)
n = število;
if (n < m)
{
Console.WriteLine("Naravno število n je manjše od naravnega števila m. Prosim popravite število n.");
Console.ReadLine();
goto Popravek;
}
if (m > 0 && n > 0)
{
for (int i = m; m < n; m++)
{
//POGLEDA SE ALI IMA ŠTEVILO OSTANEK
int ostanekDeljenja = m % 3;
if (ostanekDeljenja == 0)
{
if (števec == 0)
{
Console.WriteLine("");
Console.WriteLine("Lista vseh naravnih števil, med številoma {0} in {1}, ki so deljiva s številom 3:", m, n);
}
// ČE ŠTEVILO NIMA OSTANKA, SE LE TEGA IZPIŠE
int celoŠtevilo = m / 3;
Console.WriteLine("{0}", m);
števec++;
}
}
if (števec == 0)
Console.WriteLine("Med številoma {0} in {1}, ki so deljiva z številom 3 ni naravnih števil", m, n);
else
Console.WriteLine("To je to!");
Console.ReadLine();
}
}
else
{
Console.WriteLine("Vnesli ste {0}. To ni celo število. Za nadaljevanje pritisnite enter.", odgovor);
Console.ReadLine();
goto Popravek;
}
}
}
Ok, upam da si zadovoljen:
class Program
{
static void Main(string[] args)
{
int števec = 0;
int število = 0;
int m = 0;
int n = 0;
Console.WriteLine("Programček bo izpisal vse večkratnike števila 3, za vaša izbran naravna števila!");
Popravek:
if (m == 0)
Console.WriteLine("Vpišite naravno število m:");
else if (n == 0)
Console.WriteLine("Vpišite še naravno število n:");
string odgovor = Console.ReadLine();
//preverjanje če je vneseno res število:
bool boolŠtevilo = false;
boolŠtevilo = int.TryParse(odgovor, out število);
if (boolŠtevilo)
{
if (m == 0)
{
m = število;
goto Popravek;
}
else if (n == 0)
n = število;
if (n < m)
{
Console.WriteLine("Naravno število n je manjše od naravnega števila m. Prosim popravite število n.");
Console.ReadLine();
goto Popravek;
}
if (m > 0 && n > 0)
{
for (int i = m; m < n; m++)
{
//POGLEDA SE ALI IMA ŠTEVILO OSTANEK
int ostanekDeljenja = m % 3;
if (ostanekDeljenja == 0)
{
if (števec == 0)
{
Console.WriteLine("");
Console.WriteLine("Lista vseh naravnih števil, med številoma {0} in {1}, ki so deljiva s številom 3:", m, n);
}
// ČE ŠTEVILO NIMA OSTANKA, SE LE TEGA IZPIŠE
int celoŠtevilo = m / 3;
Console.WriteLine("{0}", m);
števec++;
}
}
if (števec == 0)
Console.WriteLine("Med številoma {0} in {1}, ki so deljiva z številom 3 ni naravnih števil", m, n);
else
Console.WriteLine("To je to!");
Console.ReadLine();
}
}
else
{
Console.WriteLine("Vnesli ste {0}. To ni celo število. Za nadaljevanje pritisnite enter.", odgovor);
Console.ReadLine();
goto Popravek;
}
}
}

Mitja Bonča ::
Evo, še 2. tvoja naloga. Ampak vedi, da priti do teh rezultatov je možno na 100 in en način. To je eden od njih:
class Program
{
static void Main(string[] args)
{
int številoČrke = 0;
string novoBeseda = null;
Console.WriteLine("Programček za 5x ponavljanje vseh samoglasnikov v imenu.");
Console.WriteLine("Prosim vpišite ime:");
string odgovor = Console.ReadLine();
if (odgovor != String.Empty)
{
char[] vseČrke = odgovor.ToCharArray();
foreach (char enaČrka in vseČrke)
{
številoČrke += 1;
string črka = Convert.ToString(enaČrka);
string črkaOsnovna = črka;
if (črka == "a" || črka == "e" || črka == "i" || črka == "o" || črka == "u")
{
for (int i = 1; i < 5; i++)
{
črka = črkaOsnovna + črka;
}
}
novoBeseda += črka;
}
}
Console.WriteLine("");
Console.WriteLine("Rezultat 5x ponavljanja samoglasnikov je:");
Console.WriteLine("{0}", novoBeseda);
Console.ReadLine();
}
}
class Program
{
static void Main(string[] args)
{
int številoČrke = 0;
string novoBeseda = null;
Console.WriteLine("Programček za 5x ponavljanje vseh samoglasnikov v imenu.");
Console.WriteLine("Prosim vpišite ime:");
string odgovor = Console.ReadLine();
if (odgovor != String.Empty)
{
char[] vseČrke = odgovor.ToCharArray();
foreach (char enaČrka in vseČrke)
{
številoČrke += 1;
string črka = Convert.ToString(enaČrka);
string črkaOsnovna = črka;
if (črka == "a" || črka == "e" || črka == "i" || črka == "o" || črka == "u")
{
for (int i = 1; i < 5; i++)
{
črka = črkaOsnovna + črka;
}
}
novoBeseda += črka;
}
}
Console.WriteLine("");
Console.WriteLine("Rezultat 5x ponavljanja samoglasnikov je:");
Console.WriteLine("{0}", novoBeseda);
Console.ReadLine();
}
}

Mitja Bonča ::
ni blema, če imaš še kaj, ti kar povej.
btw, kako si prvo rešil, druge pa ne, saj je 2. dosti lažja. :)
btw, kako si prvo rešil, druge pa ne, saj je 2. dosti lažja. :)
Zgodovina sprememb…
- spremenil: Mitja Bonča ()

Spura ::
Mitja Bonča je izjavil:
>> implying da se ime ne more zacet s samoglasnikom
>> implying da je "if" boljsa opcija od "switch"
>> implying da je se uporablja foreach, ce rabis indeks
>> implying da se v kodi uporablja sumnike
>> implying da številoČrke > steviloCrk, novoBeseda > novaBeseda
Zgodovina sprememb…
- spremenil: Spura ()

Mitja Bonča ::
Spura, kaj si hotel s tem povedati?
Ne vem kaj si hotel, ampak tvoj post zveni zelo nenavadno.
No da obrazložim tvoje besede:
- da se ime ne more začeti s samoglasnikom. Ne? Kaj je pa Andrej?
- if je boljša opcija od switch-a.
- tudi for zanko se rabi, če rabiš index: primer:
for(int i = 0; i < listView1.Items.Count; i++)
{
if(listView1.Items[i].Text == "KAR NEKAJ")
{
// ČE JE V PRVEM STOLPCU LISTVIEW-JA IME KAR NEKAJ, POTEM NAREDI SLEDEČE:
//KAR PA ŽE HOČEŠ
}
}
- kaj si hotel reči z šumniki. VS nima problema z šumniki.
- zadnje je pa kar nekaj. Tega še Einstein nebi razvozlal.
Ne vem kaj si hotel, ampak tvoj post zveni zelo nenavadno.
No da obrazložim tvoje besede:
- da se ime ne more začeti s samoglasnikom. Ne? Kaj je pa Andrej?
- if je boljša opcija od switch-a.
- tudi for zanko se rabi, če rabiš index: primer:
for(int i = 0; i < listView1.Items.Count; i++)
{
if(listView1.Items[i].Text == "KAR NEKAJ")
{
// ČE JE V PRVEM STOLPCU LISTVIEW-JA IME KAR NEKAJ, POTEM NAREDI SLEDEČE:
//KAR PA ŽE HOČEŠ
}
}
- kaj si hotel reči z šumniki. VS nima problema z šumniki.
- zadnje je pa kar nekaj. Tega še Einstein nebi razvozlal.
Zgodovina sprememb…
- spremenil: Mitja Bonča ()

Spura ::
Mitja Bonča je izjavil:
Spura, kaj si hotel s tem povedati?
Ne vem kaj si hotel, ampak tvoj post zveni zelo nenavadno.
No da obrazložim tvoje besede:
- da se ime ne more začeti s samoglasnikom. Ne? Kaj je pa Andrej?
Tvoja koda implicira drugace.



Mitja Bonča ::
Oprosti, ampak še vedno ne razumem kaj hočeš povedati. Bi lahko bil malo bolj natančen.
Tudi jaz se še učim in sprejmem vsako konstruktivno mnenje. Zato prosim...
Tudi jaz se še učim in sprejmem vsako konstruktivno mnenje. Zato prosim...
Zgodovina sprememb…
- spremenil: Mitja Bonča ()

techfreak :) ::
Mitja Bonča je izjavil:
Oprosti, ampak še vedno ne razumem kaj hočeš povedati. Bi lahko bil malo bolj natančen.
Tudi jaz se še učim in sprejmem vsako konstruktivno mnenje. Zato prosim...
Šumniki se v spremenljivkah ne uporabljajo, goto-ji v večini primerov niso zaželjenih.
'A' != 'a'
Zgodovina sprememb…
- spremenil: techfreak :) ()

Mitja Bonča ::
Hvala, to je pa res ja.
Se bom probal odnavaditi pisanja šumnikov v spremenljivhah.
btw, kaj bi pa ti naredil namesto goto? Kakšne if zanke, ali switch?
Se bom probal odnavaditi pisanja šumnikov v spremenljivhah.
btw, kaj bi pa ti naredil namesto goto? Kakšne if zanke, ali switch?
Zgodovina sprememb…
- spremenil: Mitja Bonča ()

Mitja Bonča ::
Evo, popravil je to sedaj bolje:
class Program { static void Main(string[] args) { int števec = 0; int število = 0; int m = 0; int n = 0; bool boolVpisŠtevilke_1 = false; bool boolVpisŠtevilke_2 = false; bool boolVečjeŠtevilo = false; string odgovor = null; Console.WriteLine("Programček bo izpisal vse večkratnike števila 3, za vaša izbran naravna števila!"); while (!boolVpisŠtevilke_1) { if (števec == 0) Console.WriteLine("Vpišite naravno število m:"); else Console.WriteLine("Vnesli ste {0}. To ni celo število. Prosim ponovite vnos števila m:", odgovor); odgovor = Console.ReadLine(); boolVpisŠtevilke_1 = int.TryParse(odgovor, out število); if (boolVpisŠtevilke_1) m = število; števec++; } števec = 0; while (!boolVpisŠtevilke_2) { if (števec == 0) Console.WriteLine("Vpišite naravno število n:"); else if (števec > 0 && !boolVečjeŠtevilo) Console.WriteLine("Vnesli ste {0}. To ni celo število. Prosim ponovite vnos števila n:", odgovor); odgovor = Console.ReadLine(); boolVpisŠtevilke_2 = int.TryParse(odgovor, out število); if (boolVpisŠtevilke_2) { n = število; if (n < m) { Console.WriteLine("Naravno število n mora biti večje od števila m:"); boolVpisŠtevilke_2 = false; boolVečjeŠtevilo = true; } } else boolVečjeŠtevilo = false; števec++; } števec = 0; if (m > 0 && n > 0) { for (int i = m; m < n; m++) { //POGLEDA SE ALI IMA ŠTEVILO OSTANEK int ostanekDeljenja = m % 3; if (ostanekDeljenja == 0) { if (števec == 0) { Console.WriteLine(""); Console.WriteLine("Lista vseh naravnih števil, med številoma {0} in {1}, ki so deljiva s številom 3:", m, n); } // ČE ŠTEVILO NIMA OSTANKA, SE LE TEGA IZPIŠE int celoŠtevilo = m / 3; Console.WriteLine("{0}", m); števec++; } } if (števec == 0) Console.WriteLine("Med številoma {0} in {1}, ki so deljiva z številom 3 ni naravnih števil", m, n); else Console.WriteLine("To je to!"); Console.ReadLine(); } } }

norcuron ::
Pri tadrugi nalogi recimo je eden od načinov preverjanja tudi ta, da preverjaš kaj ti vrne IndexOf(), recimo takole se lahko naredi na enega od načinov:
Kot je bilo že povedano, prasca lahko zakolješ na več kot en način.
namespace Namnozeni_samoglasniki { class Pac_en_primer { static void Main(string[] args) { //začetni izpis Console.WriteLine("\n NAMNOŽENI SAMOGLASNIKI-najdemo samoglasnik in ga namnožimo"); Console.WriteLine("-------------------------------------------------------------"); //uporabnika pozovemo, da vnese poljubno ime Console.Write("\nVnesi poljubno ime: "); //deklariramo dve novi spremenljivki in zbirko samoglasnikov string vnesenoIme, novIzpisImena = ""; const string zbirkaSamoglasnikov = "aeiouAEIOU"; //v prvo shranimo vnešeno ime, v drugo bomo shranjevali črke za končni izpis vnesenoIme = Console.ReadLine(); //z zanko gremo skozi vse znake vnešenega imena in iščemo samoglasnike foreach (char trenutnaCrka in vnesenoIme) { //če je rezultat, ki ga vrne IndexOf() različen od -1, smo našli samoglasnik if (zbirkaSamoglasnikov.IndexOf(trenutnaCrka) != -1) { /* naredimo 5 znakov, lahko bi pa tudi naredili FOR zanko in dodali znak ob vsakem prehodu*/ novIzpisImena += "" + trenutnaCrka + trenutnaCrka + trenutnaCrka + trenutnaCrka + trenutnaCrka; } else { novIzpisImena += trenutnaCrka; } //konec IF-ELSE stavka } //konec FOREACH zanke //naredimo še končni izpis Console.WriteLine("\nKončni izpis obdelanega besedila:"); Console.WriteLine("----------------------------"); Console.WriteLine(novIzpisImena); //počakamo na tipko Enter Console.ReadLine(); } } }
Kot je bilo že povedano, prasca lahko zakolješ na več kot en način.

Great are mysteries of the mind ... or not?
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | C# program za pretvorbo v desetiško število z rekurzijoOddelek: Programiranje | 1521 (1244) | MrStein |
» | križci krožci c # (strani: 1 2 )Oddelek: Programiranje | 12205 (10864) | Yacked2 |
» | [C#] Domača naloga - osnoveOddelek: Programiranje | 2547 (1764) | 11tomi12 |
» | [C#] razlagaOddelek: Programiranje | 1617 (1334) | krastača |
» | [c] Enaki datotekiOddelek: Programiranje | 1059 (919) | Spura |