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

[Kurs C++, Lekcja 22] Nie potrafię zrobić (drugiego) zadania domowego

Ostatnio zmodyfikowano 2011-07-29 15:46
Autor Wiadomość
Loodwin
Temat założony przez niniejszego użytkownika
[Kurs C++, Lekcja 22] Nie potrafię zrobić (drugiego) zadania domowego
» 2011-07-28 17:37:58
Witam!
Jak zrobić drugie zadanie domowe w Lekcji 22?
Myślałem nad tym godzinę i tylko to mam:

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

using namespace std;

int wpisz( int tab[], int ile )
{
    for( int indeks; indeks < ile; indeks++ )
    {
        int licznik;
        if( licznik == 0 )
        { tab[ licznik ] += 1; }
        else
        { tab[ licznik ] =( tab[ licznik-- ] + 5 );
            licznik++; }
    }
}



int main()
{
   
    int tablica[ 20 ];
    wpisz( tablica, 20 );
    int licznik;
    for( int indeks; indeks < 20; indeks++ )
    {
        cout << tablica[ licznik ] << endl;
        licznik++;
    }
   
    getch();
    return 0;
}
P-37442
m4tx
» 2011-07-28 17:51:55
C/C++
for( int indeks; indeks < ile; indeks++ )
{
    int licznik;
    if( licznik == 0 )
    { tab[ licznik ] += 1; }
    else
    { tab[ licznik ] =( tab[ licznik-- ] + 5 );
        licznik++; }
}
Zastanawiam się, po co Ci tam ta zmienna licznik, gdzie ją inicjalizujesz i dlaczego myślisz, że w każdej iteracji pętli jej wartość zostanie, oraz po co tam jest ten if... a na dodatek
( tab[ licznik-- ] + 5 )
 jakoś mi nie pasuje z:
(1 + n*5)

Siadaj, pała.

Jak zrobić drogie zadanie domowe w Lekcji 22?
Weź to popraw, bo aż razi w oczy :/
P-37443
Loodwin
Temat założony przez niniejszego użytkownika
Takie coś...
» 2011-07-28 18:04:27
Takie coś wymyśliłem i działa źle dalej:
C/C++
#include <iostream>
#include <cstdlib>
#include <ctime>
#include <conio.h>

using namespace std;

int wpisz( int tab[], int ile )
{
    for( int indeks = 0; indeks < ile; indeks++ )
    {
        tab[ indeks ] +=+ 5;
    }
}



int main()
{
   
    int tablica[ 20 ];
    wpisz( tablica, 20 );
    for( int indeks; indeks < 20; indeks++ )
    {
        cout << tablica[ indeks ] << endl;
    }
   
    getch();
    return 0;
}
P-37444
m4tx
» 2011-07-28 20:21:28
Hmmmm...

(1 + n*5)

Zastanów się, czy powyższy wzór zgadza się z Twoim...
P-37450
sync667
» 2011-07-29 13:27:10
C/C++
#include <iostream>
#include <cstdlib>
#include <ctime>

using namespace std;

void rezultat( int tablica[], int m ) // funkcja wypisujaca liczby z tablicy
{
    for( int indeks = 0; indeks < m; indeks++ )
         cout << "Tablica zawiera : " << tablica[ indeks ] << endl;
   
}

void wypelnianieT( int tablica[], int m, int n ) // funkcja wypełnia tablice ciągiem (1+n*5) czyli za każdym
{
    for( int indeks = 0; indeks < m; indeks++ )
    {
        tablica[ indeks ] = n;
        n += 5;
    }
   
}

int main()
{
    int tablica[ 20 ];
    wypelnianieT( tablica, 20, 1 );
    rezultat( tablica, 20 );
}
luknij i przeanalizuj
P-37520
m4tx
» 2011-07-29 13:45:06
@up lol, po co tyle kombinowania? W kodzie Loodwina wystarczy zmienić jedną linijkę... Zapoznaj się z zasadą KISS...

Poza tym, dajesz mu gotowy kod, z którego nic nie będzie wiedział. On powinien sam do tego dojść. Naszym zadaniem jest dać wędkę, a nie rybę.
P-37521
Loodwin
Temat założony przez niniejszego użytkownika
Czyli...
» 2011-07-29 15:14:25
M4tx czyli, którą linijkę? 14? I jak ją poprawić.
P-37530
DejaVu
» 2011-07-29 15:19:43
@up: taką, która wydaje Ci się, że jest zła :) Jaki jest sens zadania domowego skoro chcesz by za Ciebie zostało rozwiązane? Jak nie odrobisz samemu zadania z matematyki w którym trzeba policzyć 2 + 3 to nie będziesz umiał później liczyć.
P-37531
« 1 » 2
  Strona 1 z 2 Następna strona