Program do sprawdzenia (C)


(Yonagold) #1
#include


int main()

{


int a,b=0,c;


printf( "Podaj wyraz i naciśnij enter" );

scanf ("%d",&a);




if (a>0)


do

{

        printf( "podaj wyraz ciagu i nacisnij enter" );

        scanf("%d", &a);


        if (b
{

               b=a;

                }}





                    while (a>0)



                printf("%i", b);

                printf("\n");

                scanf("%i", &c);



                getch();

                return 0;

                system ("pause");


             } }[/code]

a oto co ma robić ten program:

[color=#0080FF]Program ma z klawiatury wczytywać ciąg liczb rzeczywistych, wczytywanie nastąpić ma gdy napotka na 0(zero). Dodatkowo określić ma największą liczbę. [/color]

Coś nie chce się kompilować a ja nie widzę błędów :frowning:


(Xwars) #2

Też nie widzimy błędów, w końcu napisałeś że są 'jakieś'. Gdybyś stosował jakieś uporządkowane wcięcia wiedziałbyś że masz o jeden '}' za dużo. Kompilator pewnie nawet powiedział w której linii.

Zapewne zrobić nieskończonej pętli:

while (a>0)

    printf("%i", b);

też nie chciałeś :slight_smile:


(Yonagold) #3

To jest ostateczny ale nadal sie nie kompiluje. Niech ktoś powie gdzie są błędy.

#include

#include

int main(void) {


int a,b=0,c;


printf( "Podaj wyraz ciągu i naciśnij przycisk i naciśnij enter\n" );

scanf("%d", &a);


if(a > 0) {

do {

    printf("podaj wyraz ciągu i enter");

    scanf("%d",&a);


    if ( b
         b=a;


while(a>0) 

printf("%i",b);

printf("\n");

scanf("%i", &c);





return 0;             


}








[/code]

(Sawyer47) #4

Każdemu otwierającemu nawiasowi klamrowemu powinien odpowiadać 1 zamykający. Zobacz co ty tam masz i policz. Pomijając sens i działanie tego kodu.

Program ma z klawiatury wczytywać ciąg liczb rzeczywistych, wczytywanie nastąpić ma gdy napotka na 0(zero). Dodatkowo określić ma największą liczbę. - a kiedy ma się kończyć?


(Yonagold) #5
#include

#include

int main(void) {


int a,b=0,c;


printf( "Podaj wyraz ciągu i naciśnij przycisk i naciśnij enter\n" );

scanf("%d", &a);


if(a > 0) {

do {

    printf("podaj wyraz ciągu i enter");

    scanf("%d",&a);


    if ( b
         b=a;


while(a>0) {

printf("%i",b);

printf("\n");

scanf("%i", &c);



}}}}


getch();

return 0;             

}


[/code]

prosze zobaczyć co jeszcze jest nie tak ???Albo jak ktoś może napisać problem inaczej . . .


(Sawyer47) #6

To może dokończę tę definicję, uzupełniając ją o bardziej oczywistą cześć: Każdemu otwierającemu nawiasowi klamrowemu powinien odpowiadać 1 zamykający, ale nie w losowym miejscu i przypadkowej kolejności, tylko składniowo zgodnie z C... (czyli identycznie jak nawiasy w matematyce)

Zakładam, że chodziło o to aby przerwać wczytywanie po napotkaniu zera. Wtedy mogłoby to wyglądać tak:

#include 


int main() {

    int tmp, max;


    printf("podaj wyraz ciągu: ");

    scanf("%d",&tmp);

    max = tmp;


    while(tmp != 0) {

        if(tmp > max)

            max = tmp;

        printf("podaj wyraz ciągu: ");

        scanf("%d", &tmp);

    }

    printf("Max: %d\n", max);

}

To działa, ale nie wiadomo czy jest zgodne z tym co chciałeś uzyskać, bo niedostatecznie opisałeś problem.


(Yonagold) #7

Człowiek jesteś genialny działa super

Pozdrawiam


(somekind) #8

To nie geniusz, to zwykłe czytanie w Twoich myślach. Bo sam nie umiesz sprecyzować własnych potrzeb, podobnie jak niemowlęta (dlatego trzeba je przewijać).