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

Maksimum

Ostatnio zmodyfikowano 2017-04-09 00:12
Autor Wiadomość
carlosmay
» 2017-04-06 19:36:17
Co znaczą te literki w kodzie?
P-159906
DarthBane
Temat założony przez niniejszego użytkownika
» 2017-04-06 20:04:59
n- wielkość ciągu liczb
i- odlicza od 0 do n (czyli liczy ile wczytano liczb)
c- wprowadzana liczba w ciągu n
b- liczba, która jest największa w ciągu (a przynajmniej takie jest założenie)
m- zmienna przechowująca dane

ale jak się na to wszystko patrze to widzę, że jest tak nasr*ne, że aż szkoda gadać ;/
P-159907
michal11
» 2017-04-06 20:29:36
Twój program powinien działać na takiej zasadzie
1. wczytaj liczbę
2. sprawdź czy jest większa od dotychczasowego maksa
3 jeżeli tak to przypisz do maksa wczytaną liczbę
4. wypisz maksymalną liczbę

i tyle, zainicjuj zmienną która ma trzymać maksa jako minus nieskończoność tak aby zawsze przy pierwszym obiegu pętli warunek został spełniony i maks został nadpisany.

Potrzebujesz do tego pętli for, ifa, wczytywania i wypisywania na ekran i przypisywania zmiennej do zmiennej, chyba wszystkie potrzebne linki z odpowiednimi kursami dostałeś, inicjalizację maksa możesz napisać tak
int currentMax = std::numeric_limits < int >::min();
i dopisz
#include <limits>
P-159912
carlosmay
» 2017-04-06 22:02:55
ale jak się na to wszystko patrze to widzę, że jest tak
... zamotane.
Warto to odmotać stosując opisowe nazwy zamiast literek i legendy :)
P-159920
DarthBane
Temat założony przez niniejszego użytkownika
» 2017-04-07 19:33:01
efekt wypocin :)
C/C++
#include <iostream>
using namespace std;

int main()
{
    int l;
    int j = 0;
    int a = - 1000000000;
    cin >> l;
    for( int i = 0; i < l; i++ )
   
    {
       
        cin >> j;
       
        if( j > a ) a = j;
       
        cout << a << endl;
       
    }
   
    return 0;
   
}
P-159956
michal11
» 2017-04-07 19:46:34
I dalej nazywasz bez sensu zmienne, zacząłem czytać twój program od ifa i nie miałem pojęcia o co chodzi i czy na pewno masz dobrze. Poza tym co się stanie jeżeli jako pierwszą liczbę wpiszę -1000000001?
P-159957
carlosmay
» 2017-04-07 22:56:06
C/C++
#include <iostream>
#include <numeric>

int main()
{
    int max_num = std::numeric_limits < int >::min();
    int user_num;
    int loops;
    std::cin >> loops;
    for( int i { }; i < loops; ++i ) {
        std::cin >> user_num;
        if( user_num > max_num ) {
            max_num = user_num;
            std::cout << max_num << '\n';
        }
        else {
            std::cout << max_num << '\n';
        }
    }
}
Powinno działać.
P-159965
michal11
» 2017-04-07 23:25:04
C/C++
if( user_num > max_num )
{
    max_num = user_num;
    std::cout << max_num << '\n';
}
else
{
    std::cout << max_num << '\n';
}

no to akurat nie jest do końca najlepsze "czyste" i to co napisał DarthBane było moim zdaniem lepsze
C/C++
if( user_num > max_num )
{
    max_num = user_num;
}
std::cout << max_num << '\n';

a jeszcze krócej można to zapisać tak
C/C++
for( int i = 0; i < loops; ++i )
{
    std::cin >> user_num;;
    max_num = std::max( max_num, user_num );
    std::cout << max_num << "\n";
}

aczkolwiek nie jestem przekonany czy to już nie jest tylko sztuka dla sztuki
P-159966
1 « 2 » 3
Poprzednia strona Strona 2 z 3 Następna strona