2021. május 25., kedd

Házi feladat Folyamatábra készítés

Hogyan lehetne kizárni, hogy egy szám kétszer előforduljon?


Ha a sorsolás eredményét tömbben tároljuk, a kihúzott számot összehasonlíthatjuk az előzőkkel.

Szimuláljunk 5-ös lottó sorsolást. 

Az eddig meg is van,hogy szimulálja le, 
de sajnos egy szám többször is előfordul benne.

Nos épp ezt kéne kizárni.

Egy szám csak egyszer fordulhasson elő.




                        vagy



using System;
namespace otoslotto
{
class Program
{
static void Main(string[] args)
{
Random m = new Random();
int[] x = new int[5];

Console.WriteLine("A nyertes számok: ");
for (int i = 0; i < x.Length; i++)
{
{
x = (int)(m.Next(90) + 1);
Console.WriteLine(x);
}
}
foreach (int e in x)
Console.ReadLine();
}
}
}
--------------
#include <stdio.h>
#include <stdlib.h>
#include <time.h>

#define N 90

/* Osszehasonlito fuggveny egesz tomb rendezesehez. */
int intcmp(const void *a1, const void *a2) {
    int i1 = *((int *) a1), i2 = *((int *) a2);
    return i1 < i2 ? -1 : (i1 > i2 ? 1 : 0);
}

int main() {
    int n; // sorsolasok szama
    printf("Hany szamot sorsoljak? ");
    scanf("%d", &n);

    srand(time(0)); // veletlenszam generator inicializalasa

    int r[N]; // a lehetseges lottoszamokat tartalamzo tomb
    for (int i = 0; i < N; i++) { r[i] = i + 1; }

    // sorsolas
    for (int i = 0; i < n; i++) {
        int j = i + rand() % (N - i);

        // a kisorsolt szam elore (i. pozicioba) mozgatasa
        int tmp = r[j];
        r[j] = r[i];
        r[i] = tmp;
    }

    qsort(r, n, sizeof(int), intcmp); // rendezes

    // kiiras
    printf("A szamok emelkedo sorrendben a kovetkezok:\n");
    for (int i = 0; i < n; i++) { printf("%d ", r[i]); }
    printf("\n");
    
    return 0;
}
------------

A folyamatábra alakzatainak jelentése

Az Egyszerű folyamatábra megnyitásakor az Egyszerű folyamatábra alakzatai rajzsablon is megnyílik. A rajzsablon egyes alakzatai a folyamat más és más jellegű lépéseit jelölik. Ugyanakkor az alakzatoknak nincs szabványos, általános jelentésük – bármely alakzat hordozhat bármilyen jelentést, amelyben a folyamatábrákat létrehozó és olvasó emberek megegyeznek. A legtöbb folyamatábra általában csak három- vagy négyféle alakzatot használ, hacsak nincs egyértelmű üzleti indoka annak, hogy többet használjanak.

Elmondható tehát, hogy a Visióban elérhető alakzatok nevei a leggyakoribb felhasználási területekre utalnak. Íme néhány a leggyakoribb alakzatok közül:

  • Kezdete/vége    Ezzel az alakzattal jelölheti a folyamat első és utolsó lépését.

    Befejezés alakzat

  • Folyamat    Ez az alakzat a folyamat egy tipikus lépését jelöli. Szinte minden folyamatnál ez a leggyakrabban használt alakzat.

    Folyamat alakzat

  • Döntés    Ez az alakzat olyan pontot jelöl, ahol egy döntés határozza meg a következő lépést. Többféle eredmény is lehet, de gyakran csak két kimenetel van: igen és nem.

    Döntés alakzat

  • Részfolyamat    Ez az alakzat olyan lépések csoportjához használható, amelyek kombinációja részfolyamatot alkot, az pedig másutt, általában egyazon dokumentum másik lapján van definiálva. Ez jól jön hosszú és bonyolult diagramok esetében.

    Előre definiált Folyamat alakzat

  • Dokumentum    Ez az alakzat olyan lépést jelöl, amelynek eredménye egy dokumentum.

    Dokumentum alakzat

  • Adatok    Ez az alakzat azt jelzi, hogy kívülről adatok érkeznek a folyamatba, vagy adatok kerülnek ki a folyamatból. Az alakzat anyagokat is jelölhet, és Bemenet/kimenet alakzat néven is ismert.

    Adatok alakzat

  • Oldalon belüli hivatkozás    Ez a kis kör azt jelzi, hogy a következő (vagy az előző) lépés másutt található a rajzon. Ez különösen a nagy méretű folyamatábráknál hasznos, amelyeken máskülönben hosszú, nehezen végigkövethető összekötőt kellene alkalmazni.

    Oldalon belüli hivatkozás alakzat

  • Hivatkozás az oldalon kívülre    Ha ezt az alakzatot húzza a rajzlapra, párbeszédpanel jelenik meg, amelyen hiperhivatkozásokat hozhat létre egy folyamatábra két oldala vagy egy részfolyamat-alakzat és a részfolyamat lépéseit bemutató másik folyamatábra-oldal között.

    Hivatkozás az oldalon kívülre típusú alakzat

Példa; Páros vagy páratlan a szám?










Algoritmizálás (tervezés)
Az algoritmus  egy feladat véges számú lépésre bontott megoldása. A lépések elemi műveletek (véges sok van belőlük), melyek utasítások formájában írhatók le, tehát található hoz-zá olyan gép, ami végrehajtja. Az algoritmus lépései elemi tevékenységek (a végrehajtóérti, vagy meg kell tanítani rá – ez újabb algoritmus).Az algoritmusok legfontosabb jellemzője:
Egyértelmű: ugyanazon bemenő adatok eseték mindig ugyanazt a választ adja.
Véges számú lépésből áll: leírásuk véges hosszúságú szöveggel lehetséges. Természetesen ez nem jelenti azt, hogy a futása is véges idejű, bár erre törekszünk.
Általános: a bemenő adatokra megfogalmazott feltételeknek eleget tevő értékekreeredményt ad.

A struktogram elemei



Nincsenek megjegyzések:

Megjegyzés küldése