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

[C] Sprawdzanie ciągu, czy jest to ciąg arytmetyczny.

Ostatnio zmodyfikowano 2017-04-15 13:41
Autor Wiadomość
Ridos
Temat założony przez niniejszego użytkownika
[C] Sprawdzanie ciągu, czy jest to ciąg arytmetyczny.
» 2017-04-15 01:11:38
Witam.
Jestem studentem pierwszego roku informatyki i męczę się z tyn programem drugi dzień Pierwszy raz mam tak, że wywala mi program, gdzie kompilator nie widzi żadnego błędu. Proszę o sprawdzenie kodu i podpowiedz dlaczego go wywala :/
Polecenie brzmi tak: Utworzyć program, który wczytuje liczbę naturalną n (n>1), następnie ciąg liczb rzeczywistych
   i sprawdza, czy gdzieś w tym ciągu wystąpiły obok siebie trzy liczby tworzące ciąg arytmetyczny.
 
C/C++
#include <stdio.h>
int main() {
    int n, u, i, jest;
    float r, r1, r2, sum, sum1;
    jest = 0;
    puts( "Podaj liczbe naturalna wieksza od 1" );
    scanf( "%u", & n );
    while( n <= 1 ) {
        puts( "Podana zla liczbe,podaj wieksza od 1: " );
        scanf( "%u", & n );
    }
    puts( "Podaj pierwsza liczbe" );
    scanf( "%f", & r );
    for( i = 2; i <= n; i++ ) {
        printf( "Podaj %u liczbe: ", i );
        scanf( "%f", r1 );
        if( i = 2 ) {
            sum = r1 - r;
            r2 = r1;
        }
        if( i > 3 )
             sum1 = r1 -( r + r2 );
       
        if( sum = sum1 ) jest = 1;
       
    }
    if( jest = 1 )
         puts( "Ciag jest ciagiem arytmetycznym" );
    else
         puts( "Ciag nie jest ciagiem arytmetycznym" );
   
    return 0;
}
P-160139
maly7
» 2017-04-15 02:43:58
Po pierwsze w warunkach używasz operatora przypisania (=) zamiast porównania (==).
Program prawdopodobnie wywala Ci dlatego, że nie podajesz wskaźnika na r1, powinno być:
scanf( "%f", & r1 )

I musisz trochę pozmieniać, ponieważ ten program nie wykryje poprawnie ciągu arytmetycznego.
P-160140
Ridos
Temat założony przez niniejszego użytkownika
Dziękuje.
» 2017-04-15 13:41:30
O to własnie chodziło, dziękuje za pomoc, program pozmieniam ;)
P-160149
« 1 »
  Strona 1 z 1