Maksymalna wartość ciągu

0

Witam. Mam za zadanie znaleźć maksymalną wartość ciągu, która może być reprezentowana przy pomocy komputera. Coś tam stworzyłem, ale mam poważne wątpliwości - szczególnie w miejscach, które oznaczyłem "???". Chciałbym poprosić o podpowiedź czy w ogóle dobrze kombinuję. Jeśli nie to poprosiłbym o nakierowanie w jaki sposób się do tego zabrać. Jeśli tak to co wpisać w tych miejscach, aby program faktycznie zwracał szukaną wartość?

#include <iostream>

using namespace std;

int main()
{
    int i;
    float tab[???];
    float wartmax;
    tab[0]=1;

    wartmax=tab[0];

    for(i=1; i<???; i++)
    {
        tab[i]=1+1/tab[i-1];
        if (tab[i]>wartmax) wartmax=tab[i];
    }

    cout << "Maksymalna wartosc dla tego ciagu wynosi " << wartmax;

    return 0;
}

Mam też wątpliwości co do typu tablicy i zmiennej wartmax. Czy zadeklarować to jako float, double czy może jeszcze coś innego? Przypominam, że szukana jest maksymalna wartość ciągu reprezentowana przy pomocy komputera - tak mam w treści zadania. Z góry dzięki i proszę o wyrozumiałość - dopiero zaczynam naukę :)

0

indeksowanie tablic zaczynamy od zera

http://www.cplusplus.com/reference/algorithm/max/
możesz się zapoznać, bo algorytm w sumie napisałeś, ale jako ciekawostkę (lub zadanie dodatkowe)

1+1? po co, a nie lepiej od razu dwa? nie ma być tam czasem 1+i?

to zależy jak duży ma być ten ciąg zrobi sobie zmienna

const unsigned int rozmiarTablicy = 20;

i w miejsca ??? daj rozmiarTablicy. Będziesz potrzebować większy zbiór to wtedy zwiększysz rozmiarTablicy.

Lub możesz użyć vector http://www.cplusplus.com/reference/vector/vector/
wtedy nie trzeba określać z góry wielkości tablicy

ewentualnie jeżeli chcesz użyć tablicy, ale żeby długość ciągu (a zarazem wielkość tablicy) była podawana przez użytkownika to zapoznaj się z dynamicznymi tablicami (operator new)

EDIT.
nie wiem co to znaczy
"reprezentowana przy pomocy komputera" że chodzi że binarnie? czy jak?

0

Skoro to C++, to może chodzić o wartość możliwą do zapisania w unsigned long long int, Aczkolwiek są biblioteki umożliwiające operację na dowolnych liczbach, więc możesz spokojnie dać cout << "ograniczona tylko dostępną pamięcią" << endl ; Przez "maksymalną wartość ciągu" rozumiem największy jego element.

1 użytkowników online, w tym zalogowanych: 0, gości: 1