hlmod.hu

Magyar Half-Life Mód közösség!
Pontos idő: 2024.06.05. 16:10



Jelenlévő felhasználók

Jelenleg 222 felhasználó van jelen :: 1 regisztrált, 0 rejtett és 221 vendég

A legtöbb felhasználó (1565 fő) 2020.11.21. 11:26-kor tartózkodott itt.

Regisztrált felhasználók: Bing [Bot] az elmúlt 5 percben aktív felhasználók alapján

Utoljára aktív
Ahhoz hogy lásd ki volt utoljára aktív, be kell jelentkezned.



Az oldal teljeskörű
használatához regisztrálj.

Regisztráció

Kereső


Új téma nyitása  Hozzászólás a témához  [ 17 hozzászólás ]  Oldal 1 2 Következő
Szerző Üzenet
 Hozzászólás témája: Pozitívia és Negatívia
HozzászólásElküldve: 2013.06.28. 10:42 
Offline
Imperátor
Avatar

Csatlakozott: 2009.04.21. 09:33
Hozzászólások: 3991
Megköszönt másnak: 5 alkalommal
Megköszönték neki: 135 alkalommal
Sziasztok.

Újabb feladattal jövök, csak Nektek:

A történet:
Valamikor régen, túl az abakuszon, a lederivált egyenesen is túl, ahol még az integrálás sem járt, létezett két tartomány: Pozitívia és Negatívia.
A két tartomány folyamatos hadban álltak egymással, folyamatosan oltották ki egymás előjeleit.
A háború több tízezer PIn át tartott, míg a rejtve maradt, 0. tartomány úgy döntött, ő is hadba szál, kihasználja a két tartomány harcát, és elfoglalja területeiket.
Minden, nullára esett érték, akik a két tartomány között keletkezett, mellé állt, s hadba indult, nem is kicsi előnyökkel:
Míg a tartományok összeadó harcot folytattak, addig a 0. tartomány a szorzás műveletét vettette be a két tartomány ellen.
Vajon ki nyerte meg a gigászi csatát?


Feladat:
Adott 3 tartomány:
- Pozitívia
- Negatívia
- 0. tartomány

Minden oldal rendelkezik egy random "indulás" sereggel:
Pozitívia: [10000, 100000]
Negatívia: [-100000, -10000]
A nulladik tartomány "nullákkal" rendelkezik, azaz 10..100 db 0-val indul.

A gigászi harc menete igen egyszerű:
Minden alkalommal mind2 oldal küld a saját értékéből random 1-10 db-ot, azaz:
Pozitívia: [1, 10] db-ot
Negatívia: [-10, -1] db-ot
Továbbá a 0. tartomány is támad: minden 5. körben - persze ha van serege - a legtöbb nyereséggel rendelkező tartományt. Amennyiben egyenlőek a nyerések száma, akkor random dől el, melyik oldalt támadja.
A támadott fél 50%os eséllyel tudja elkerülni a 0. tartomány csapását.
Amennyiben nem sikerül, támadói elvesznek (0-val való szorzás => 0).

A csata az így kialakított értékek összeadásával dől el ("összeadó harc"), melynek három következménye lehet:
Ha az összeadás eredménye pozitív, akkor a pozitív sereg kioltotta a negatívat, azaz Pozitívia nyert.
Ha az összeadás eredménye negatív, akkor a negatív sereg kioltotta a pozitívat, azaz Negatívia nyert.
Amennyiben az eredmény nulla, a 0. tartományba egy nulla kerül, s döntetlennel zárul a két tartomány közti aktuális csata.
A nem nulla megmaradt sereg visszatér az eredeti tartományába.

A csata addig folyik, amíg valamelyik oldal "el nem fogy". (0 lesz).

Írjatok programot, (Akár Pawn, akár másban), ami szimulálja ezt a háborút, addig, amíg valamelyik fél elesik.
A végén írjátok ki, melyik oldal mennyi csatát nyert, s mennyi "sereggel" rendelkeznek még.

_________________
Kód:
I'm back

Kép


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Pozitívia és Negatívia
HozzászólásElküldve: 2013.06.28. 11:47 
Offline
Imperátor
Avatar

Csatlakozott: 2009.04.21. 09:33
Hozzászólások: 3991
Megköszönt másnak: 5 alkalommal
Megköszönték neki: 135 alkalommal
Átírtam a feladatot, most nézzétek meg :)

_________________
Kód:
I'm back

Kép


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Pozitívia és Negatívia
HozzászólásElküldve: 2013.06.28. 12:46 
Offline
Developer
Avatar

Csatlakozott: 2011.06.01. 21:11
Hozzászólások: 7965
Megköszönt másnak: 295 alkalommal
Megköszönték neki: 537 alkalommal
bla

_________________
http://www.easyrankup.eu


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Pozitívia és Negatívia
HozzászólásElküldve: 2013.06.28. 12:51 
Offline
Tiszteletbeli
Avatar

Csatlakozott: 2012.10.09. 13:48
Hozzászólások: 1439
Megköszönték neki: 174 alkalommal
A PIn az milyen mértékegység, és mekkora méterben? :D

_________________
Minden jót! :)


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Pozitívia és Negatívia
HozzászólásElküldve: 2013.06.28. 12:52 
Offline
Developer
Avatar

Csatlakozott: 2011.06.01. 21:11
Hozzászólások: 7965
Megköszönt másnak: 295 alkalommal
Megköszönték neki: 537 alkalommal
BeepBeep írta:
A PIn az milyen mértékegység, és mekkora méterben? :D


Az simkártyánál van xD

_________________
http://www.easyrankup.eu


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Pozitívia és Negatívia
HozzászólásElküldve: 2013.06.28. 14:10 
Offline
Őstag

Csatlakozott: 2011.06.12. 20:51
Hozzászólások: 1089
Megköszönt másnak: 3 alkalommal
Megköszönték neki: 44 alkalommal
ezt a részt nem nagyon értem:s
Kód:
A nulladik tartomány "nullákkal" rendelkezik, azaz 10..100 db 0-val indul.


ez most 10 és 100közötti random érték?

_________________
[img]semmi[/img]


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Pozitívia és Negatívia
HozzászólásElküldve: 2013.06.28. 15:27 
Offline
Félisten
Avatar

Csatlakozott: 2010.09.16. 20:57
Hozzászólások: 950
Megköszönt másnak: 9 alkalommal
Megköszönték neki: 101 alkalommal
Ezek honnan jönnek? (Lehet megpróbálom c++ al de még most tanulgatom xd)

_________________
Weboldalam: nandee.smmg.hu
Kép


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Pozitívia és Negatívia
HozzászólásElküldve: 2013.06.28. 16:00 
Offline
Imperátor
Avatar

Csatlakozott: 2009.04.21. 09:33
Hozzászólások: 3991
Megköszönt másnak: 5 alkalommal
Megköszönték neki: 135 alkalommal
fuck604 írta:
ezt a részt nem nagyon értem:s
Kód:
A nulladik tartomány "nullákkal" rendelkezik, azaz 10..100 db 0-val indul.


ez most 10 és 100közötti random érték?


igen, jobb lett volna ha így írom mint a többinél: [10, 100]

_________________
Kód:
I'm back

Kép


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Pozitívia és Negatívia
HozzászólásElküldve: 2013.06.28. 22:56 
Offline
Őskövület
Avatar

Csatlakozott: 2011.09.26. 20:33
Hozzászólások: 2105
Megköszönt másnak: 28 alkalommal
Megköszönték neki: 33 alkalommal
a válasz 2.53434*5.34(2*4.534534)/45+(-7.345*3) :lol:


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Pozitívia és Negatívia
HozzászólásElküldve: 2013.07.04. 09:14 
Offline
Imperátor
Avatar

Csatlakozott: 2009.04.21. 09:33
Hozzászólások: 3991
Megköszönt másnak: 5 alkalommal
Megköszönték neki: 135 alkalommal
Nah itt van C#ul:

Kód:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace PN0
{
    public class Tartomany
    {
        public int SeregMeret { get; set; }
        public int NyertCsatak { get; set; }
        public string TartomanyNev { get; set; }
    }

    class Program
    {
        static void Main(string[] args)
        {
            Random rnd = new Random();
            // 3 Tartomány:
            Tartomany Pozitivia = new Tartomany() { SeregMeret = rnd.Next(10000, 100000), NyertCsatak = 0, TartomanyNev = "Pozitivia" };
            Tartomany Negativia = new Tartomany() { SeregMeret = rnd.Next(-100000, -10000), NyertCsatak = 0, TartomanyNev = "Negativia" };
            Tartomany NulladikTartomany = new Tartomany() { SeregMeret = rnd.Next(10, 100), NyertCsatak = 0, TartomanyNev = "0. tartomany" };


            int KorSzam = 0;

            while (Pozitivia.SeregMeret > 0 && Negativia.SeregMeret < 0)
            {
                KorSzam++;
                int tamadopuff;
                tamadopuff = rnd.Next(1, 10);
                int PTamado = tamadopuff > Pozitivia.SeregMeret ? Pozitivia.SeregMeret : tamadopuff;
                Pozitivia.SeregMeret -= PTamado;
                tamadopuff = rnd.Next(-10, -1);
                int NTamado = tamadopuff < Negativia.SeregMeret ? Negativia.SeregMeret : tamadopuff;
                Negativia.SeregMeret -= NTamado;

                if (KorSzam % 5 == 0 && NulladikTartomany.SeregMeret > 0)
                {
                    NulladikTartomany.SeregMeret--;

                    if (rnd.Next(1, 100) > 50)
                    {

                        if (Pozitivia.NyertCsatak > Negativia.NyertCsatak)
                            PTamado = 0;
                        else if (Pozitivia.NyertCsatak < Negativia.NyertCsatak)
                            NTamado = 0;
                        else
                        {
                            if (rnd.Next(1, 100) > 50)
                                PTamado = 0;
                            else
                                NTamado = 0;
                        }
                    }
                }
                int csataEredmeny = PTamado+NTamado;
                if (csataEredmeny > 0)
                {
                    Pozitivia.SeregMeret += csataEredmeny;
                    Pozitivia.NyertCsatak++;
                }
                else if (csataEredmeny < 0)
                {
                    Negativia.SeregMeret += csataEredmeny;
                    Negativia.NyertCsatak++;
                }
                else
                {
                    NulladikTartomany.NyertCsatak++;
                    NulladikTartomany.SeregMeret++;
                }
            }
            Console.WriteLine("Korok Szama: " + KorSzam.ToString());
            Console.WriteLine("Tartomany\tSereg\tNyertesCsatak");
            Console.WriteLine("{0}\t{1}\t{2}", Pozitivia.TartomanyNev, Pozitivia.SeregMeret, Pozitivia.NyertCsatak);
            Console.WriteLine("{0}\t{1}\t{2}", Negativia.TartomanyNev, Negativia.SeregMeret, Negativia.NyertCsatak);
            Console.WriteLine("{0}\t{1}\t{2}", NulladikTartomany.TartomanyNev, NulladikTartomany.SeregMeret, NulladikTartomany.NyertCsatak);
            Console.ReadKey();
        }
    }
}


Ugye, nem is olyan bonyolult?

_________________
Kód:
I'm back

Kép


Hozzászólás jelentése
Vissza a tetejére
   
Hozzászólások megjelenítése:  Rendezés  
Új téma nyitása  Hozzászólás a témához  [ 17 hozzászólás ]  Oldal 1 2 Következő


Ki van itt

Jelenlévő fórumozók: nincs regisztrált felhasználó valamint 38 vendég


Nyithatsz új témákat ebben a fórumban.
Válaszolhatsz egy témára ebben a fórumban.
Nem szerkesztheted a hozzászólásaidat ebben a fórumban.
Nem törölheted a hozzászólásaidat ebben a fórumban.
Nem küldhetsz csatolmányokat ebben a fórumban.

Keresés:
Ugrás:  
Powered by phpBB® Forum Software © phpBB Limited
Magyar fordítás © Magyar phpBB Közösség
Portal: Kiss Portal Extension © Michael O'Toole