Skocz do zawartości
sadycho

C++ - Kolejny Problem Poczatkujacego...

Rekomendowane odpowiedzi

Witam wszystkich :)

Zalozmy ze jest tablica A w ktorej jest N liczb. Jest tez tablica B, siedmioelementowa, w ktorej sa same zera. Pierwszy element tablicy B przyjmuje wartosc pierwszego elementu tablicy A, reszta elementow B pozostaje bez zmian (zera). Nowa zawartosc tablicy B jest potrzebna do dalszych obliczen. Nastepnie pierwszy element tablicy B przyjmuje wartosc drugiego elementu tablicy A, drugi element tablicy B przyjmuje wartosc pierwszego elementu tablicy A, reszta pozostaje bez zmian. Ponownie nowa zawartosc tablicy B jest potrzebna do dalszych obliczen. I tak dalej, i tak dalej, az cala zawartosc tablicy A zostanie "przepuszczona" przez tablice B. Na samym koncy w tablicy B powinny byc znow same zera. Po kazdej takiej operacji elementy tablicy B sa wykorzystywane do dalszych obliczen.

Nie prosze o gotowy program tylko o podpowiedz jak to osiagnac. Moja dotychczasowa wiedza jest chyba niewystarczajaca, zeby to napisac...

Z gory dziekuje za wszelka pomoc :)

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

lol...

bez komentarza ;/

 

Moze bys przeczytal dowolny kurs c/c++ ? Bo ty elementarnych podstaw nie znasz.

 

PHP

#define N 10

 

int tabA[N];

int tabB[7]={0,0,0,0,0,0,0};

 

for(int i=0; i<N; ++i)

{

tabB[0]=tabA;

//tu robisz "dalsze obliczenia"

 

for(int j=0; j<7; ++j)

{

 tabB=0;

}

}

 

edit: byl wielki blad tutaj ktory wynikl z faktu ze najpierw dalem wewnetrzna petle poza obszar zewnetrznej, a wtedy stwierdzilem ze to niezgodne z zadaniem i przenioslem do srodka, nie zmieniajac i na j

Edytowane przez Nargil

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Dziekuje za odpowiedzi. Jednak czegos nie rozumiem... Czy w zaproponowanym rozwiazaniu nie bedzie sie zmienial tylko element tabB[0]? Czy po kazdej zmianie elementu tabB[0] nie beda zerowane nastepne elementy tablicy B, ktore i tak maja wartosc 0? Zerowanie tablicy B ma byc rownoczesne z przesuwaniem w niej elementow. Poprawcie mnie jesli sie myle...

Szacunek

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

PHP

#define N 10

 

int tabA[N];

int tabB[7]={0,0,0,0,0,0,0};

 

int j,i;

for(i=0; i<N; ++i)

{

for(j=6; j>0; j--) // przesuwamy elementy tablicy B o 1 w prawo

{

 tabB[j]=tabB[j-1];

}

tabB[0]=tabA;

//tu robisz "dalsze obliczenia"

 

}

for(j=0; j<7; ++j)

{

 tabB[j]=0;

}

 

teraz chyba to dobrze zrozumialem.

(nie testowane, pisane na szybkiego )

oczywiscie kod daloby sie bardziej zagmantwac ( czyt. zoptymalizowac ) Bo po co on np przesuwa elementy tablicy jesli calosc jest zerem. Ale tak jest najprostsza forma jaka powinienes zrozumiec.

Edytowane przez Nargil

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Słuchaj : O CO CHODZI??

Po jaki grzyb tabB MA aż siedem elementów?? Ale to nie jest ważne.

Ja tu widzę tylko jedną pętle for!! do przeglądania tabA i "if'a" w środku. Jeśli "i"jest parzyste to do pierwszego elementu tabB wpisuje "itą" wartość z tabA a jeśli "i" jest nieparzyste to do drugiego elementu tabB wpisuję "itą" wartość , a do pierwszego w tabB wpisuję wtedy wartość itą plus jeden z tabA . Ot cała filozofia.

 

CZy może się mylę??

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Nargil: wlasnie tak to rozwiazalem :) A wlasciwie to moja dziewczyna podsunela mi takie rozwiazanie :oops:

Contrast: chodzilo mi o to, ze przy wejsciu elementu tabA[2] w tablicy B beda juz trzy elementy tablicy A, przy wejsciu tabA[3] - cztery, a od tabA[6] do tabA[N] tablica B bedzie zapelniona w calosci. Potem nastepuje zerowanie z przesuwaniem.

Dziekuje wszystkim za pomoc i pozdrawiam :)

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Dołącz do dyskusji

Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.

Gość
Dodaj odpowiedź do tematu...

×   Wklejono zawartość z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić grafiki. Dodaj lub załącz grafiki z adresu URL.

Ładowanie


×
×
  • Dodaj nową pozycję...