Skocz do zawartości
Pulsar

[pilne] Program Zaliczeniowy I Mały Błąd

Rekomendowane odpowiedzi

Zobaczylem ten twoj kod i musze powiedziec jedno: masakra.

Styl kodowania masz fatalny. Nierowne wcieca lub ich brak. Raz stosujesz 8 spacji raz 4 innym razem 2 lub wogole taby :mur: Dzieki temu nie masz pozamykanych klamerek przy ifach i definicjach funkcji. To tak na pierwszy rzut oka. Na mojej uczelni za taki kod mimo ze program by dzialal niestety oblalbys. Jak poprawie ten kod to moze znajde cos wiecej.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Kumpel mi nieco to teraz poprawił, ale dodał jeszcze coś takiego:

 

Przemysl jeszcze raz funkcje "main", bo w niej masz najwiecej balaganu.

Kilkanascie if-ow, brak prawidlowej tabulacji, do tego niezmatchowane nawiasy.

 

 

Teraz mam coś takiego:

 

--------------------Configuration: zaliczenie - Win32 Debug--------------------

Compiling...

zaliczenie.cpp

e:\c++\zaliczenie.cpp(47) : error C2958: the left parenthesis '(' found at 'e:\c++\zaliczenie.cpp(43)' was not matched correctly

e:\c++\zaliczenie.cpp(120) : fatal error C1075: end of file found before the left brace '{' at 'e:\c++\zaliczenie.cpp(116)' was matched

Error executing cl.exe.

 

zaliczenie.exe - 2 error(s), 0 warning(s)

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Poprawilem to. Teraz program dziala i sie kompiluje. Daj maila to ci przesle poprawione pliki. Jeszcze jedno ja uzywam visual studio 2005 jak uzywasz czegos innego lub starszego to najprawdopodobniej bedziesz musial zmienic w pliku automat.h

#include <cstdio>#include <iostream>using namespace std;na#include <stdio.h>#include <iostream.h>

Na przyszlosc: zwracaj uwage na wciecia (najlepiej taby o szerokosci 4), przy definicjach funkcji po zakmnieciu klamerka } nie musisz stawiac ; przy cin i cout nie stawia sie znaku ascii Ť tylko dwa ostre nawiasy << lub >>. Jak otwierasz klmerke { to od razu stawiaj zamykajaca } i wroc linijke wyzej, wyeliminujesz w ten sposob bledy z niezamknietymi klamrami. Zdecyduj sie na jeden sposob otwierania klamerek. Bo raz stosujesz w tej samej linijce co nazwa funkcji, petla a raz zaczynasz od nowej lini.

Edytowane przez ghostek

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

ghostek: z takimi radami to sie schowaj... Nie uzywa sie iostream.h ! Ja bym od razu oblal za takie cos, bo to jest przestarzale.

 

#include <iostream>

using namespace std;

 

tak jest poprawnie. Poza tym autor napisal ze w c++, wiec stdio.h raczej tez odpada bo to pochodzi z czystego c.

Edytowane przez Nargil

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Nikomu nie radzilem uzywania iostream.h zamiast iostream i using. Przerobilem mu program tak ze uzywa iostream i using namespace std. Dodalem tylko ze jak bedzie kompilowac na czyms starszym to musi to zmienic na iostream.h. Na niektorych uczelniach uzywaja jeszcze Visuala 6.0 albo Borlanda 3.15 i tam iostream nie skompiluje sie poniewaz nie ma takiego pliku naglowkowego.

Nastepnym razem jak na kogos naskoczysz proponuje przeczytac calego posta i go zrozumiec.

Edytowane przez ghostek

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Dołącz do dyskusji

Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.

Gość
Dodaj odpowiedź do tematu...

×   Wklejono zawartość z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić grafiki. Dodaj lub załącz grafiki z adresu URL.

Ładowanie


×
×
  • Dodaj nową pozycję...