Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Zadanie 8.5 - 3

Ostatnio zmodyfikowano 2010-04-13 12:54
Autor Wiadomość
Hajt.MoRuS
Temat założony przez niniejszego użytkownika
Zadanie 8.5 - 3
» 2010-04-08 22:10:21
Napisalem czesc programu. Chcialem zobaczyc czy wszystko jest wporzadku, lecz jak zwykle tak nie bylo. Wiec jesli poczatek jest zly to dalej nawet nie ma po co isc ;d
Prosze o wytlumaczenie mi w czym tkwi problem ;)
C/C++
#include <iostream>
#include <conio.h>

int main()
{
    using namespace std;
   
    int budzet = 2000000;
   
    string kwartal[ 10 ][ 25 ] =
    {
        "Rok 1999 - 1 kwartal",
        "2 kwartal",
        "3 kwartal",
        "4 kwartal",
        "Rok 2000 - 1 kwartal",
        "2 kwartal",
        "3 kwartal",
        "4 kwartal",
        "Rok 2001 - 1 kwartal",
    };
   
    int zyski[ 10 ] =
    {
        75000, //zyski[0]
        130000,
        0,
        0,
        0, //zyski[4]
        0,
        1000000,
        0, //zyski[7]
       
    };
   
    int straty[ 10 ] =
    {
        - 0, //straty[0]
        - 0,
        - 55000,
        - 55000,
        - 0, //straty[4]
        - 0,
        - 0,
        - 250000, //straty[7]
    };
   
    int bilans[ 10 ][ 15 ] =
    {
        zyski[ 0 ] + straty[ 0 ],
        zyski[ 1 ] + straty[ 1 ],
        zyski[ 2 ] + straty[ 2 ],
        zyski[ 3 ] + straty[ 3 ],
        zyski[ 4 ] + straty[ 4 ],
        zyski[ 5 ] + straty[ 5 ],
        zyski[ 6 ] + straty[ 6 ],
        zyski[ 7 ] + straty[ 7 ],
    };
   
    cout << kwartal << zyski << straty << endl;
   
    getch();
    return 0;
}
P-15940
malan
» 2010-04-09 01:11:03
Prosze o wytlumaczenie mi w czym tkwi problem
Błędnie posługujesz się tablicami...

http://kursy.ddt.pl/?LessonId=11. Będę konsekwentny :).
P-15948
Hajt.MoRuS
Temat założony przez niniejszego użytkownika
» 2010-04-11 22:46:12
Juz jako tako ogarniam te tabilice ( przynajmniej tak mi sie wydaje ;d ), ale mam problem z 1 rzecza ...

Jezeli w pierwszej tablicy mam zyski a w drugiej straty i chce miec z tego bilans, czyli dobra dodaje tab1 do tab2. Ale co zrobic jezeli musze w jedym z kwartalow podzielic aktualny budzet przez 2? Lub co jeszcze odjac 10% aktualnego budzetu?

Wiem ze budzet /= 2;
        budzet = budzet - (budzet * 0.1);

O i btw czy powyzszy zapis rowna sie temu zapisowi? budzet -= (budzet * 0.1);
       
P-16041
lenrokskate
» 2010-04-12 13:25:09
musisz użyć for i dodać każde pole osobno
C/C++
int zyski[ 10 ];
int straty[ 10 ];
for( int i = 0; i < 10; i++ )
     zyski[ i ] -= straty[ i ];
P-16047
Hajt.MoRuS
Temat założony przez niniejszego użytkownika
» 2010-04-12 16:45:10
Moj kod troszke sie rozni od poprzedniego, gdzie blednie jak kolega/nauczyciel ( ;d ) wyjasnil mi, iz zle posluguje sie tablicami. Oczywiscie wielkie dzieki Ci za to, nie bierz tego czasem za jakas obraze ;) Tak wyglada teraz:

C/C++
#include <iostream>
#include <conio.h>

int main()
{
    using namespace std;
   
    const short maly = 8;
    const short duzy = 50;
   
    int budzet = 2000000;
   
    char tab1[ maly ][ duzy ] =
    {
        "Rok 1999\tZyski\tStraty\tBilans\n1 kwartal - ",
        "2 kwartal - ",
        "3 kwartal - ",
        "4 kwartal - ",
        "Rok 2000\n1 kwartal - ",
        "2 kwartal - ",
        "3 kwartal - ",
        "4 kwartal - ",
    };
   
    int tab2[ maly ] = // zyski
    {
        75000,
        130000,
        0,
        0,
        0,
        0,
        1000000,
        0,
    };
   
    int tab3[ maly ] = // straty
    {
        - 0,
        - 0,
        - 55000,
        - 55000,
        - 2,
        - 0 // <- gdzie TUTAJ ma znaleźć się zapis rowny budzet / 2
        - 0, // <- a TUTAJ budzet = budzet - (budzet * 0.1)
        - 250000,
    };
   
    int tab4[ maly ] = // bilans
    {
        tab2[ 0 ] + tab3[ 0 ],
        tab2[ 1 ] + tab3[ 1 ],
        tab2[ 2 ] + tab3[ 2 ],
        tab2[ 3 ] + tab3[ 3 ],
        tab2[ 4 ] + tab3[ 4 ],
        tab2[ 5 ] + tab3[ 5 ],
        tab2[ 6 ] + tab3[ 6 ],
        tab2[ 7 ] + tab3[ 7 ],
    };
   
    cout << "Poczatkowy budzet firmy DDT wynosi 2000000 zl" << endl << endl;
   
   
    for( int i = 0; i < maly; i++ )
   
         cout << tab1[ i ] << "\t" << tab2[ i ] << "\t" << tab3[ i ] << "\t" << tab4[ i ] << "\n";
   
    cout << endl;
   
    cout << "Budzet firmy na rok 2001 wynosi " << budzet << " zl." << endl;
   
    getch();
    return 0;
}
Problem polega na tym, iz nie wiem jak zrobic aby zyski i straty odrazu wplywaly na budzet po to abym mogl aktualna wartosc tego budzetu podzielic, w celu otrzymania AKTUALNEJ polowy budzetu a nie tego, ktory jest na samym poczatku.

Sorki ale jasniej nie potrafie ;d
P-16057
pekfos
» 2010-04-12 17:11:16
Nie rozumiem co chcesz osiągnąć. Może to:
C/C++
#include <iostream>
#include <conio.h>
using namespace std;

const short int m = 8;
const short int d = 50;

int forsa = 2000000;

char tab1[ m ][ d ] =
{
    "Rok 1999tZyskitStratytBilansn1 kwartal - ",
    "2 kwartal - ",
    "3 kwartal - ",
    "4 kwartal - ",
    "Rok 2000n1 kwartal - ",
    "2 kwartal - ",
    "3 kwartal - ",
    "4 kwartal - ",
}

int tab2[ m ] = // zyski
{
    75000,
    130000,
    0,
    0,
    0,
    0,
    1000000,
    0,
}

int tab3[ m ] = // straty
{
    0,
    0,
    55000, // minusowa strata? niee..
    55000,
    2,
    0 // <- gdzie TUTAJ ma znaleźć się zapis rowny budzet / 2
    0, // <- a TUTAJ budzet = budzet - (budzet * 0.1)
    250000,
}

int tab4[ m ]; // bilans

void licz_forse() {
    for( int a = 0; a < m; a++ ) tab4[ a ] = tab2[ a ] - tab3[ a ];
   
}

void odczuj_strate() {
    for( int a = 0; a < m; a++ ) forsa += tab4[ a ];
   
}

int main() {
    cout << "Firma DDT ma w skarbonce 2000000 złotych" << endl;
    //ciekawe. prawda, Panie Piotrze? :D
   
    for( int a = 0; a < m; a++ )
         cout << tab1[ a ] << ":zyski:" << tab2[ a ] << ",straty:" << tab3[ a ] << ",bilans:" << tab[ 4 ];
   
    cout << endl << "a budzet firmy to..  ";
    licz_forse();
    odczuj strate();
    cout << forsa << "!!" << endl;
    getch();
    return 0;
}
P-16063
Hajt.MoRuS
Temat założony przez niniejszego użytkownika
» 2010-04-12 17:49:47
To tak ... nie wiem jak to nazwac dlatego nazwe to po swojemu. Przepisalem kod i "zrobilem program" tak, ze ukazalo mi sie "czarne okienko" ze "stworzonym" programem. Jednak nie wspominajac o bledach w tym kodzie, jak i jego estetyce dopatrzylem sie braku bilansu dla poszczegolnych kwartalow oraz ominieciu tego o co wlasnie prosilem tzn. jak podzielic aktualny budzet przez 2 oraz jak odjac jego 10%.

Moze sproboje to "narysowac":

Budzet Firmy DDT wynosi 10 zl.

Rok 1999: Zyski Straty Bilans
1 kw.     2     0      2
2 kw.     2     0      2
3 kw.     0     1      -1
4 kw.     0     1      -1
Rok 2000:
1 kw.     0     6      -6          <-- tutaj jest budzet / 2;
2 kw.     0     0.6    -0.6        <-- tutaj jest budzet = budzet-(budzet*0.01);
3 kw.     5     0      5
4 kw.     0     3      -3

Budzet firmy DDT na poczatek roku 2001 wynosi 7.4 zl

Aaaa i jeszcze nie doszedlem jak poslugiwac sie 'void'em, wiec jesli mozna to bez niego ;)
P-16068
pekfos
» 2010-04-12 18:20:59
w moim kodzie funkcja odczuj_strate() aktualizuje budżet.
więc dalej:
C/C++
cout << "disiaj mamy " << budzet << "$" << endl;
budzet /= 2;
cout << "jutro.. miec bedziemy " << budzet << "$" << endl;
budzet -= budzet * 0.1; //10%
cout << "a pojutrze... to bedzie tylko " << budzet << "$" << endl;
P-16074
« 1 » 2
  Strona 1 z 2 Następna strona