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

[Tablice] Błąd z przekazywaniem danych

Ostatnio zmodyfikowano 2009-07-28 14:02
Autor Wiadomość
DejaVu
» 2009-07-27 13:46:29
Czytaj proszę uważniej to co napisałem wcześniej, bo tak to się nie posuniesz o krok do przodu :)
P-8814
GoldWolf
» 2009-07-27 13:47:00
C/C++
int Tablica1[] = { 2, 7, 16, 8 };

int Wynik1[ 0 ] = Tablica1[ 0 ]; //2
int Wynik1[ 1 ] = Tablica1[ 1 ]; //7
int Wynik1[ 2 ] = Tablica1[ 2 ]; //16
int Wynik1[ 3 ] = Tablica1[ 3 ]; //8
Nie przypisujesz po kolei dane z Tabeli1. Nie rozumiesz tematu, albo nie rozumiem co chcesz uzyskać.
P-8815
n3t_b0y
Temat założony przez niniejszego użytkownika
» 2009-07-27 15:04:56
Zrobiłem coś takiego:

C/C++
#include <iostream>
using namespace std;

int main()
{
    int Tablica1[] = { 2, 7, 16, 8 };
    int Tablica2[] = { 22, 2, 11 };
    int Tablica3[] = { 8383, 222, 292, 8 };
    int Tablica4[] = { 5, 2, 4 };
   
    cout << Tablica1[ 0 ] + Tablica1[ 1 ] * Tablica1[ 2 ] - Tablica1[ 3 ] << endl;
    cout << Tablica2[ 0 ] * Tablica2[ 1 ] / Tablica2[ 3 ] << endl;
    cout << Tablica3[ 0 ] - Tablica3[ 1 ] + Tablica3[ 2 ] * Tablica1[ 4 ] << endl;
    cout << Tablica4[ 0 ] * Tablica4[ 1 ] * Tablica4[ 2 ] << endl;
   
    //przekazywanie wynikow do drugiej tabeli
    int Wynik1[] = { Tablica1[ 0 ], Tablica1[ 1 ], Tablica1[ 2 ], Tablica1[ 3 ] };
    int Wynik2[] = { Tablica2[ 0 ], Tablica2[ 1 ], Tablica2[ 3 ] };
    int Wynik3[] = { Tablica3[ 0 ], Tablica3[ 1 ], Tablica3[ 2 ], Tablica3[ 4 ] };
    int Wynik4[] = { Tablica4[ 0 ], Tablica4[ 1 ], Tablica4[ 2 ] };
   
   
    int Liczba[] = { 2, 13, 4, 1, 88, 250 };
   
    cout << endl;
    cout << Wynik1[ 0 ] * Liczba[ 0 ] - Liczba[ 1 ] << endl;
    cout << Wynik2[ 1 ] - Liczba[ 2 ] + Liczba[ 3 ] << endl;
    cout << Wynik3[ 2 ] + Liczba[ 4 ] - Liczba[ 5 ] << endl;
   
}

Myślałem że to będzie dobrze liczyło a liczby źle.
Np.

106*2-13 = 1055 , a mi wyświetla -9
P-8817
GoldWolf
» 2009-07-27 17:46:02
C/C++
//przekazywanie wynikow do drugiej tabeli
int Wynik1[] = { Tablica1[ 0 ], Tablica1[ 1 ], Tablica1[ 2 ], Tablica1[ 3 ] };
int Wynik2[] = { Tablica2[ 0 ], Tablica2[ 1 ], Tablica2[ 3 ] };
int Wynik3[] = { Tablica3[ 0 ], Tablica3[ 1 ], Tablica3[ 2 ], Tablica3[ 4 ] };
int Wynik4[] = { Tablica4[ 0 ], Tablica4[ 1 ], Tablica4[ 2 ] };
NAPISZE RAZ JESZCZE TO NIE SĄ WYNIKI PIERWSZEGO ZADANIA TYLKO, PRZEKAZANA DANE Z TABLICY1 DO TABLICY WYNIKI1...

Wynikami pierwszego zadania jest wyświetlenie tutaj:
C/C++
cout << Tablica1[ 0 ] + Tablica1[ 1 ] * Tablica1[ 2 ] - Tablica1[ 3 ] << endl;
cout << Tablica2[ 0 ] * Tablica2[ 1 ] / Tablica2[ 3 ] << endl;
cout << Tablica3[ 0 ] - Tablica3[ 1 ] + Tablica3[ 2 ] * Tablica1[ 4 ] << endl;
cout << Tablica4[ 0 ] * Tablica4[ 1 ] * Tablica4[ 2 ] << endl;
Tutaj je wyświetlasz ale nigdzie ich nie zapisujesz do żadnej tabeli !!!
Myślałem że to będzie dobrze liczyło a liczby źle.
Np. 106*2-13 = 1055 , a mi wyświetla -9Wg moich danych wynik powinien się równać 106 * 2 = 212 - 13 = 199.
P-8821
n3t_b0y
Temat założony przez niniejszego użytkownika
» 2009-07-27 19:42:20
Ja o tym wiem...

Ja ten kod od początku rozumie tak:

C/C++
#include <iostream>
using namespace std;

int main()
{
    //tworzenie tablic
    int Tablica1[] = { 2, 7, 16, 8 };
    int Tablica2[] = { 22, 2, 11 };
    int Tablica3[] = { 8383, 222, 292, 8 };
    int Tablica4[] = { 5, 2, 4 };
   
    //wyswietlenie obliczonych liczb
    cout << Tablica1[ 0 ] + Tablica1[ 1 ] * Tablica1[ 2 ] - Tablica1[ 3 ] << endl;
    cout << Tablica2[ 0 ] * Tablica2[ 1 ] / Tablica2[ 3 ] << endl;
    cout << Tablica3[ 0 ] - Tablica3[ 1 ] + Tablica3[ 2 ] * Tablica1[ 4 ] << endl;
    cout << Tablica4[ 0 ] * Tablica4[ 1 ] * Tablica4[ 2 ] << endl;
   
    //Przesylanie obliczonych danych z tablicy o nazwie "tablica"
    //do tablic o nazwie "Wynik"
    int Wynik1[] = { Tablica1[ 0 ], Tablica1[ 1 ], Tablica1[ 2 ], Tablica1[ 3 ] };
    int Wynik2[] = { Tablica2[ 0 ], Tablica2[ 1 ], Tablica2[ 3 ] };
    int Wynik3[] = { Tablica3[ 0 ], Tablica3[ 1 ], Tablica3[ 2 ], Tablica3[ 4 ] };
    int Wynik4[] = { Tablica4[ 0 ], Tablica4[ 1 ], Tablica4[ 2 ] };
   
   
    //stworzenie tablicy o nazwie "Liczba" i zadeklarowanie w niej liczb
    int Liczba[] = { 2, 13, 4, 1, 88, 250 };
   
    //wyswietlenie obliczonych liczb
    cout << endl;
    cout << Wynik1[ 0 ] * Liczba[ 0 ] - Liczba[ 1 ] << endl;
    cout << Wynik2[ 1 ] - Liczba[ 2 ] + Liczba[ 3 ] << endl;
    cout << Wynik3[ 2 ] + Liczba[ 4 ] - Liczba[ 5 ] << endl;
   
}

Co do tego wyniku co mi wyszedł " 1055 " to pomyliłem liczby i mi źle wyszło.
Naprawdę ma być tak jak ty mówisz 199 ;) Tyle że mi dalej wyświetla -9 ...

Piszę przecież Wynik1[0] czyli 106 * Liczba[0] czyli 2 - Liczba[1] czyli 13.

P-8826
DejaVu
» 2009-07-27 19:55:00
P-8827
n3t_b0y
Temat założony przez niniejszego użytkownika
» 2009-07-27 20:00:59
Ten wasz temat o tablicach przeczytałem 2 razy i wszystko zrozumiałem , te 3 programy napisałem sam , i wszystko rozumie.

No to ok , powiedzcie jeszcze raz gdzie robię ten błąd. Które linijki mam źle , czy w ogóle mam źle cały kod...
P-8828
GoldWolf
» 2009-07-27 20:05:26
Skoro nie rozumiesz co do Ciebie piszęSpokojnie Admni się trochę uniósł.

Posłuchaj pierwsze zadanie masz dobrze zrobione do tego momentu:
C/C++
//przekazywanie wynikow do drugiej tabeli
Wszystko co jest poniżej jest ŹLE.
Musisz utworzyć JEDNĄ tabele wyniki i do niej zapisać wcześniej wyświetlone liczby(czyli wyniki z pierwszego zadania).

To co ty robisz to jest tylko przepisywanie danych z jednej tabeli do drugiej o czym już pisałem, jeżeli nie rozumiesz co usiłujemy ci powiedzieć, to spróbuj przerobić kurs jeszcze raz. Radzę też przeczytać jeszcze raz cały ten temat. Ew napisz czego dokładnie nie rozumiesz.

Jeżeli nadal będziesz miał problemy radzę ci zająć się tylko jednym przykładem a nie wszystkimi na raz będzie ci łatwiej wychwycić błąd, który popełniasz.

BŁĄD który popełniasz to tylko wyświetlenie wyników pierwszego zadania, ALE NIGDZIE ICH DO TABLICY NIE ZAPISUJESZ !!!
P-8829
1 « 2 » 3
Poprzednia strona Strona 2 z 3 Następna strona