x-kom hosting

program obliczający maksimum

kabel91
utworzono
utworzono

witam tak jak w temacie proszę o pomoc mam wykonać program który obliczy maksimum(znajdzie największą liczbę)

jestem trochę w tym tepy ale jak wytłumaczycie to zrozumiem. polecenie od nauczyciela dostałem takie napisac program który czyta n liczb od uzytkownika i obliczy ich maksimum. pilnie potrzebne to pd na jutro z góry thx

Trinitrotoluen
komentarz
komentarz

Znaczy ma obliczyć, która liczba jest największa wśród tych podanych?

kabel91
komentarz
komentarz

właśnie tak

luq
komentarz
komentarz

Ja bym to napisał tak:

1. podaje się programowi ile liczb ma porównać, powiedzmy zmienna liczba

2. dajesz pętelkę żeby wykonywała się od 0 do liczba

3. w pętli program pobiera liczbę i wpisuje ją do kolejnej komórki tablicy

4. wszystko się powpisuje do tablicy a funkcji nie znam (chodź może jest, mówię o Pascalu bo języka z rodziny C nie znam) na przeszukiwania tablicy w poszukiwaniu max, więc dałbym że porównuje najpierw komórkę 1 z 2 potem jeśli 1 jest większa od 2 to porównuje 1 z 3 a jeśli 2 jest większe to 2 z 3 i tak do końca.

kabel91
komentarz
komentarz

zrobiłem go ale nie wiem czemu nie uznaje miliona

bez_tytuĹu.JPG

post-6162-1201628052_thumb.jpg

luq
komentarz
komentarz

Jak nie uznaje miliona?

i := 1;

Nie jest potrzebne tuż po begin, możesz to usunąć.

Poza tym twój pomysł jest lepszy, nie wiem po co ja wymyślałem jakieś tablice :D

kabel91
komentarz
komentarz
Jak nie uznaje miliona?

normalnie nie uznaje. gdy wpiszę kilka liczb i jedną z nich jest milion to wybiera największą ale nie milion

a zdaża sie też tak że wogóle nie wiadomo jaka liczba sie pojawia

grucha
komentarz
komentarz

Przyczyna tego problemu bardzo prosta ;]

W części deklaracyjnej piszesz:

var max, ile, liczba, i:integer;

Integer jest to zmienna 16-bitowa (2^(16-1)) co nam daje zakres -32768:32767

Wpisując do zmiennej typu integer liczbę 32768 otrzymasz wynik -32768, ponieważ zmienna "zeruje się", tylko można powiedzieć, że "zeruje się" od swojego dolnego zakresu :] Przykładowo jeszcze, wpisując 65536 otrzymasz 0 itd. ;]

Rozwiązanie? Prościutkie ;]

W części deklaracyjnej wpisujesz:

var ile, i :integer; maks, liczba:longint;
luq
komentarz
komentarz
var

ile, i :integer;

maks, liczba:longint;

Chyba longint :]

grucha
komentarz
komentarz
Chyba longint :]

Literówka, każdy wie o co chodzi :P

Wciąż szukasz rozwiązania problemu? Napisz teraz na forum!

Możesz zadać pytanie bez konieczności rejestracji - wystarczy, że wypełnisz formularz.

×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Strona wykorzystuje pliki cookies w celu prawidłowego świadczenia usług i wygody użytkowników. Warunki przechowywania i dostępu do plików cookies możesz zmienić w ustawieniach przeglądarki.