Bizonyos feltétel teljesülése esetén több utasítás végrehajtása? C#
Az lenne a kérdésem, h adott egy feltétel (ebben az esetben egy "kétfelé ágazó utasítás"), és arra lennék kíváncsi, h hogyan lehet megvalósítani, h ha mondjuk igaznak bizonyul a feltétel akkor több utasítást végezzen el a program ne csak egyet. Az "if"-fel próbáltam, de ha ott egymás után több utasítást adok meg, még mielőtt következne az "else", akkor persze jön vagy 4-5 hibaüzenet, és le se fut a program. Nincs erre valamiféle megoldás. Ha valami (számotokra legalábbis) egyszerű dolog, akkor kérek mindenkit le "teremtsen le", nem olyan rég tanuljuk a programozást, ráadásul kb. heti egyszer 1,5 órát töltünk vele.
A konkrét feladat: "Írjon egy programot, amely egy N(tetszőleges természetes szám) elemet tartalmazó tömbről megmondja, h melyik két eleme között legkisebb a különbség!" kiírom a forráskódot, ha segít vmit:
using System;
class Program
{
static void Main()
{
int[] a = { 0, 1, 3, 6, 10, 15, 21 };
int kul = 0;
int elso = 0;
int masodik = 1;
for (int i = 0; i <= 5; i++)
{
if (kul < (Math.Abs(a[i] - a[i + 1]))) kul = Math.Abs(a[i] - a[i + 1]) elso=a[i]; masodik=a[i+1]; else kul = kul+0;
}
Console.WriteLine(elso+" "+masodik);
Console.ReadLine();
}
Természetesen látható, h a for cikluson belüli "if"-nél kellene a segítség... előre is köszönöm a válaszolóknak!
Nagyon egyszerű. Írd le többször az ifet egymás után:
if (feltétel) utasítás1;
if (feltétel) utasítás2;
if (feltétel) utasítás3;
stb.
Nem fogsz tudni több utasítást végrehajtani egy iffel, szóval kénytelen vagy trükközni.
Kapcsos zárójel:
if((feltétel1 < feltét2) && feltét2 < feltét3){
utasitas1;
utasitas2;
utasitas3;
}else{
...
}
Olyan rosszak vagytok, elrontjátok a mókát :(
Amúgy az ifbe csak egy utasítás fér be, viszont az az egy lehet blokkutasítás is.
Ez aztán a kód. :D
Egyébként ha a for ciklusban tudod alkalmazni a kapcsos zárójelet, if-ben miért nem?
Az if nem ciklus.
És az is rajta volt a lapokon, hogy rendkívül érdemes egy számhoz 0-t adni, ráadásul minden egyes cikluslépésben?
A végén még megszorozhatnád 1-el, biztos ami biztos! :D
A kul+0 az én agyszüleményem volt, csak azt akarja jelenteni, h ha nem igaz a feltétel, akkor ne csináljon semm-né vmi hibá írt, ki így oldottam meg. Toldozgatás, foldozgatás, de a célnak megfelelt :D
nem is tudom miért írtam ciklust az if-hez, az kétfelé ágazó utasítás, bocs(a for-ral keverhettem hirtelen össze)
utolsónak: jaja, ismerem azt a könyvet
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!