Mały problem z pętlą for.

0

Witam Mam taki malutki problem z rozwiązaniem bardzo krótkiego zadanka

Treść:
Napisz pętlę for która drukuje ciąg wartości typu duble postaci: 0.1, -0.2, 0.3, -0.4, 0.5, -0.6......-2

Nie mogę znaleźć sposobu jak sobie z tym poradzić. Może ktoś podpowiedzieć jak powinna wyglądać ta pętla.

0

zacznij od wypisania liczb 0.1, 0.2, 0.3, 0.4... 2. Jak to zrobisz, następnym krokiem będzie pomnożenie co drugiej liczby przez -1.

0

próbowałem to jakoś lepiej matematycznie zrobić ale nie udawało mi się... więc zrobiłem coś takiego

int j=1;
    for(double i=0.1; i<2.0; i=i+0.1){
        if(j%2==0){
            std::cout << (i*(-1)) << " ";
        }
        else{
            std::cout << i << " ";
        }
        j++;
    }
1

Liczba 0.1 w zapisie zmiennoprzecinkowym jest reprezentowana przez liczbę minimalnie większą od 0.1. Stąd po wykonaniu 10 dodawań nigdy nie będzie ona równa 2.0. Spróbuj użyć liczb całkowitych w pętli:

 for( int i {1} ; i<=20 ; ++i )
 {
     cout << i*( (i%2==0)?(-0.1):0.1 ) << " ";
 }
0

Dzięki Panowie za podpowiedź.

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