n3t_b0y Temat założony przez niniejszego użytkownika |
[Tablice] Błąd z przekazywaniem danych » 2009-07-27 01:23:23 Witam , robię to zadanie , z działu tablice. 2. Używając tabeli z pierwszego zadania napisz program, który wyniki z pierwszego zadania przekaże do drugiej tabeli następnie wykona dodatkowe obliczenia odpowiednio: -> wynik * 2 - 13 -> wynik - 4 + 1 -> wynik + 88 - 250 -> wynik + (doda wyniki jakie zostaną uzyskane z 3 poprzednich wyrażeń). Najlepiej napisać program do pierwszego zadania a potem rozszerzyć go by wykonywał podane przykład. Pierwszy przykład zrobiłem ale nie wiem czy dobrze , bynajmniej program mi działa. Kod: #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; int Wynik1[] = Tablica1[]; int Wynik2[] = Tablica2[]; int Wynik3[] = Tablica3[]; int Wynik4[] = Tablica4[]; int Liczba[] = { 2, 13, 4, 1, 88, 250 }; cout << Wynik1[ 0 ] * Liczba[ 0 ] - Liczba[ 1 ] << endl; cout << Wynik2[ 1 ] - Liczba[ 2 ] + Liczba[ 3 ] << endl; cout << Wynik3[ 2 ] + Liczba[ 4 ] - Liczba[ 5 ] << endl; } W przekazywaniu wyników do drugiej tabeli jest błąd , jak to przekazać? Dalej chyba nie mam blędow bo kompilator nic nie wyświetla. |
|
DejaVu |
» 2009-07-27 01:32:42 1) ustal na sztywno rozmiar tablicy do której będziesz kopiował dane. 2) dane trzeba kopiować wiersz po wierszu. |
|
n3t_b0y Temat założony przez niniejszego użytkownika |
» 2009-07-27 01:39:19 Dane trzeba kopiować wiersz po wierszu , czyli. int Wynik1[ 0 ] = Tablica1[ 0 ]; int Wynik1[ 1 ] = Tablica1[ 1 ]; int Wynik1[ 2 ] = Tablica1[ 2 ]; int Wynik1[ 3 ] = Tablica1[ 3 ];
int Wynik2[ 0 ] = Tablica2[ 0 ] int Wynik2[ 1 ] = Tablica2[ 1 ] int Wynik2[ 2 ] = Tablica2[ 2 ] int Wynik2[ 3 ] = Tablica2[ 3 ] itd... ? |
|
DejaVu |
» 2009-07-27 01:43:56 Generalnie tak, ale masz jeden dość istotny błąd. Znajdziesz go odpowiadając na następujące pytania: 1) w jaki sposób tworzysz nową tablicę? 2) w jaki sposób zapisujesz nową wartość do niej? |
|
n3t_b0y Temat założony przez niniejszego użytkownika |
» 2009-07-27 01:54:37 1. Np. Tablice1 stworzyłem tak, int Tablica1[] = { 2, 7, 16, 8 }; Wiedziałem z góry ile będzie miała liczb , więc nie wpisywałem ilości indeksu. 2. Nie wiem , myślałem że się to tak robi , int Wynik1[ 2 ] = Tablica1[ 2 ]; Tablica Wynik1 otrzymuje obliczony wynik z Tablicy1 no i dalej wykonuje działania co są niżej. Nie mogę się połapać z tą wartościami przy przekazywaniu , bo w tym pewnie błąd robię. |
|
GoldWolf |
» 2009-07-27 07:19:27 Po pierwsze to nie są wyniki: int Wynik1[] = Tablica1[]; int Wynik2[] = Tablica2[]; int Wynik3[] = Tablica3[]; int Wynik4[] = Tablica4[];
Jakbyś chciał przypisać wartość to musiałbyś to zrobić tak, ale to nie jest to czego chcemy uzyskać w zadaniu. int Wynik1[] = { Tablica1[ 1 ], Tablica1[ 2 ] }; Najlepiej jak wyniki będą w jednej tabeli. Oczywiście rozwiązanie n3t_b0y też jest poprawne. |
|
DejaVu |
» 2009-07-27 12:33:05 ptk 1: int Wynik1[ 123 ]; ptk 2: Wynik1[ 2 ] = Tablica1[ 2 ]; |
|
n3t_b0y Temat założony przez niniejszego użytkownika |
» 2009-07-27 13:26:20 Coś mi nic nie przychodzi do głowy. Przecież jak używam takiego kodu: int Wynik1[ 0 ] = Tablica1[ 0 ]; int Wynik1[ 1 ] = Tablica1[ 1 ]; int Wynik1[ 2 ] = Tablica1[ 2 ]; int Wynik1[ 3 ] = Tablica1[ 3 ]; To ja nie przypisuje do tabeli Wynik wszystkie wartości po kolei , z tabeli1,tabeli2 itd. |
|
« 1 » 2 3 |