Serwis został przeniesiony pod nową domenę: http://cpp0x.pl/
PowrótPowrótHistoria odwiedzonych stron
AutorWiadomość
Data: 2007-10-07 17:55:03

Cyrio
Nie mogę odnaleźć błędów w kodzie

#include <iostream>
#include <conio.h>
#include <math.h>
using namespace std;
#include "console.ddt"
using namespace ddt::console;
int main()

{

  cout<<"Witaj oto Mini Kalkulatorek xD"<<endl;// Program autorstwa Cyrio
  cout<<"-"<<endl;
  cout<<"CC9 CyrioCalc9 Proffesional"<<endl;
  cout<<"-"<<endl;
  cout<<"READ PRZECZYTAJ INFO"<<endl;
  cout<<"Aby Napisac liczbe z przecinkiem"<<endl;
  cout<<"Zastap przecinek kropka"<<endl;
  cout<<"3,14 -> 3.14"<<endl;
  cout<<"liczby z normalnym przecinkiem"<<endl;
  cout<<"a nie kropka nie beda dzialac"<<endl;
  cout<<""<<endl;
  cout<<"Zapraszamy na http://stop12.freeflux.net"<<endl;
  cout<<""<<endl;
  cout<<"(c)2007 by CYRIO"<<endl;
  cout<<"Poland CDEVministudios"<<endl;
  cout<<""<<endl;
  cout<<"Milego i Latwego Liczenia"<<endl;
  cout<<"Zyczy CYRIO"<<endl;
  cout<<""<<endl;
  cout<<""<<endl;
  char wyraz[100];
  cout<<"Twoj nick?: ";
  cin>>wyraz;  
  float a;
  float b;
  float c;
  float h;
  float s;
  float r;
  float lol;
  bool cyrio;
  cout<<""<<endl;
  cout<<"Elo \""<<wyraz<<"\""<<endl;
  cout<<""<<endl;
  cout<<"Witaj w tym kox Kalkulatorku :)"<<endl;
  cout<<""<<endl;
  do
  {
    cyrio=true;
    cout<<""<<endl;
    cout<<"Wcisnij dowolny klawisz aby kontynuowac"<<endl;
    cout<<""<<endl;
    getch();
    cout<<""<<endl;
    cout<<"\[1] Matematyka - Obliczenia Potegi i Pierwiastki"<<endl;
    cout<<"\[2] Matematyka - Pola i Objetosci"<<endl;
    cout<<"\[3] Fizyka - Wzory"<<endl;
    cout<<"\[4] Wszystko na jednej liscie"<<endl;
    cout<<"Wybierz kategorie: ";
    int wybor2;
    cin>>wybor2;
    cout<<""<<endl;
    cout<<endl<<"Wpisales numer: "<<wybor2<<endl;
    cout<<""<<endl;
    switch(wybor2);

    (

    case 1:
    cout<<"Matematyka - Obliczenia Potegi i Pierwiastki"<<endl;
    cout<<"\[1] Oblicz: a+b"<<endl;
    cout<<"\[2] Oblicz: a-b"<<endl;
    cout<<"\[3] Oblicz: a*b"<<endl;
    cout<<"\[4] Oblicz: a/b"<<endl;
    cout<<"\[5] Pierwiastek 2giego Stopnia"<<endl;
    cout<<"\[6] Pierwiastek 3ciego Stopnia"<<endl;
    cout<<"\[7] Podnoszenie do Potegi"<<endl;
    cout<<"\[8] Zaokraglanie"<<endl;
    cout<<"\[69] exit"<<endl;

    cout<<"Wpisz numer obliczenia: ";
    int wybor3;
    cin>>wybor3;
    cout<<""<<endl;
    cout<<endl<<"Wpisales numer: "<<wybor3<<endl;
    cout<<""<<endl;
    switch(wybor3)
    {
      case 1://kategoria matematyka i obliczenia
      cout<<"Liczba a =";
      cin>>a;
      cout<<"Liczba b =";
      cin>>b;
      cout<<"Wynik dodawania A+B="<<a+b<<endl;
      cout<<"";
      break;
      case 2:
      cout<<"Liczba a =";
      cin>>a;
      cout<<"Liczba b =";
      cin>>b;
      cout<<"Wynik odejmowania A-B="<<a-b<<endl;
      cout<<"";
      break;
      case 3:
      cout<<"Liczba a =";
      cin>>a;
      cout<<"Liczba b =";
      cin>>b;
      cout<<"Wynik mnozenia A*B="<<a*b<<endl;
      cout<<"";
      break;
      case 4:
      cout<<"Liczba a =";
      cin>>a;
      cout<<"Liczba b =";
      cin>>b;
      cout<<"Wynik dzielenia A/B="<<a/b<<endl;
      cout<<"";
      break;
      case 5:
      cout<<"Liczba a =";
      cin>>a;
      cout<<"Pierwiastek A="<<sqrt(a)<<endl;
      break;
      case 6:
      cout<<"Liczba a =";
      cin>>a;
      cout<<"Pierwiastek A="<<sqrt(a)<<endl;
      break;
      case 7:
      double liczba,potega;
      cout<<"Podaj liczbe: ";
      cin>>liczba;
      cout<<"Do ktorej potegi podniesc liczbe "<<liczba<<"? Wpisz wartosc: ";
      cin>>potega;
      cout<<"pow("<<liczba<<","<<potega<<")="<<pow(liczba,potega)<<endl;
      break;
      case 8:
      double a;
      cout<<"Podaj liczbe: ";
      cin>>a;
      cout<<"Zaokraglona liczba wynosi:"<<a<<endl;
      break;
      default:
      getch();
      return(0);
      case 69:
      cout<<"LOL Chcesz Wyjsc?"<<endl;
      cout<<"No to czesc "<<wyraz<<endl;
      cout<<"Program CyrioCALC Zostal Wykonany Przez Cyria"<<endl;
      cout<<"*-*-*"<<endl;
      cout<<"Wcisnij dowolny Klawisz aby Wyjsc z Programu"<<endl;
    }while(1);// kogzamy ;o
    case 2://Matematyka Pola i Objetosci
    cout<<"Matematyka - Pola i Objetosci"<<endl;
    cout<<"\[1] Pole kola(A to promien)"<<endl;
    cout<<"\[2] Twierdzenie Pitagorasa(Oblicz bok C)"<<endl;
    cout<<"\[3] Twierdzenie Pitagorasa(Oblicz bok B)"<<endl;
    cout<<"\[4] Twierdzenie Pitagorasa(Oblicz bok A)"<<endl;
    cout<<"\[5] Pole Kwadratu"<<endl;
    cout<<"\[6] Pole Trojkata"<<endl;
    cout<<"\[7] Pole Trapezu"<<endl;
    cout<<"\[8] Pole Prostokata"<<endl;
    cout<<"\[9] Pole Rombu"<<endl;
    cout<<"\[11] Objetosc Ostroslupa"<<endl;
    cout<<"\[12] Objetosc Szescianu"<<endl;
    cout<<"\[69] exit"<<endl;
    int wybor4;
    cin>>wybor4;
    cout<<""<<endl;
    cout<<"Wpisales numer: "<<wybor4<<endl;
    cout<<""<<endl;
    switch(wybor4)
    {
      case 1:
      cout<<"Liczba r =";
      cin>>r;
      cout<<"Pole Kola="<<3.14*(r*r)<<endl;
      break;
      case 2:
      cout<<"Liczba a =";
      cin>>a;
      cout<<"Liczba b =";
      cin>>b;
      cout<<"Bok C="<<sqrt((a*a)+(b*b))<<endl;
      break;
      case 3:
      cout<<"Liczba a =";
      cin>>a;
      cout<<"Liczba c =";
      cin>>c;
      cout<<"Bok b="<<sqrt((c*c)-(a*a))<<endl;
      break;
      case 4:
      cout<<"Liczba c =";
      cin>>c;
      cout<<"Liczba b =";
      cin>>b;
      cout<<"Bok A="<<sqrt((c*c)-(b*b))<<endl;
      break;
      case 5:
      cout<<"Liczba a =";
      cin>>a;
      cout<<"Pole="<<a*a<<endl;
      break;
      case 6:
      cout<<"Liczba a =";
      cin>>a;
      cout<<"Liczba h =";
      cin>>h;
      cout<<"Pole="<<(a*h)/2<<endl;
      break;
      case 7:
      cout<<"Liczba a =";
      cin>>a;
      cout<<"Liczba b =";
      cin>>b;  
      cout<<"Liczba h =";
      cin>>h;  
      cout<<"Pole="<<((a+b)+h)/2<<endl;
      break;
      case 8:
      cout<<"Liczba a =";
      cin>>a;
      cout<<"Liczba b =";
      cin>>b;
      cout<<"Pole="<<a*b<<endl;
      break;
      case 9:
      cout<<"Liczba d1 =";
      cin>>a;
      cout<<"Liczba d2 =";
      cin>>b;
      cout<<"Pole="<<(a*b)/2<<endl;
      break;
      case 10:
      cout<<"Liczba h =";
      cin>>a;
      cout<<"Liczba s =";
      cin>>b;
      cout<<"Pole="<<(h*s)/3<<endl;
      break;
      case 11:
      cout<<"Liczba a =";
      cin>>a;
      cout<<"Pole="<<a*a*a<<endl;
      break;
      default:
      getch();
      return(0);
      case 69:
      cout<<"LOL Chcesz Wyjsc?"<<endl;
      cout<<"No to czesc "<<wyraz<<endl;
      cout<<"Program CyrioCALC Zostal Wykonany Przez Cyria"<<endl;
      cout<<"*-*-*"<<endl;
      cout<<"Wcisnij dowolny Klawisz aby Wyjsc z Programu"<<endl;
      getch();// Program autorstwa Cyrio
      return(0);// :) wiem ze fajny xD
    }}while(1);// kogzamy ;o
  case 3://kajs3 fizyka
  int wybor5;
  cin>>wybor5;
  cout<<""<<endl;
  cout<<"Wpisales numer: "<<wybor5<<endl;
  cout<<""<<endl;
  switch(wybor5)
  {
    case 1:
    cout<<"Podaj przemieszczenie: ";
    cin>>a;
    cout<<""<<endl;
    cout<<"Podaj Czas Przemieszczenia: ";
    cin>>b;
    cout<<""<<endl;
    cout<<"Predkosc Wynosi:"<<a/b<<endl;
    break;
    case 2:
    cout<<"Podaj przemieszczenie: ";
    cin>>a;
    cout<<""<<endl;
    cout<<"Podaj przyrost Czasu: ";
    cin>>b;
    cout<<""<<endl;
    cout<<"Predkosc Chwilowa Wynosi Wynosi:"<<a/b<<endl;
    break;
    case 3:
    cout<<"Podaj przemieszczenie: ";
    cin>>a;
    cout<<""<<endl;
    cout<<"Podaj czas trwania ruchu(przyrost czasu): ";
    cin>>b;
    cout<<""<<endl;
    cout<<"Predkosc srednia wynosi:"<<a/b<<endl;
    break;
    case 4:
    cout<<"Podaj przyspieszenie: ";
    cin>>a;
    cout<<""<<endl;
    cout<<"Podaj jednostke przyspieszenia (bez sekund itp. tylko metry kilometry itp.)"<<endl;
    char jednostka[100];
    cin>>jednostka;
    cout<<"Podaj czas trwania ruchu: ";
    cin>>b;
    cout<<""<<endl;
    cout<<"Przebyta droga:"<<(a*(b*b))/2;
    cout<<""<<jednostka;
    break;  
    default:
    getch();
    return(0);
    case 69:
    cout<<"LOL Chcesz Wyjsc?"<<endl;
    cout<<"No to czesc "<<wyraz<<endl;
    cout<<"Program CyrioCALC Zostal Wykonany Przez Cyria"<<endl;
    cout<<"*-*-*"<<endl;
    cout<<"Wcisnij dowolny Klawisz aby Wyjsc z Programu"<<endl;
    getch();// Program autorstwa Cyrio
    return(0);// :) wiem ze fajny xD
  }}while(1);// kogzamy ;o
case 3://kajs3 fizyka ;o
case 4:
cout<<"*-(OBLICZ)-*"<<endl;
cout<<"\[1] Oblicz: a+b"<<endl;
cout<<"\[2] Oblicz: a-b"<<endl;
cout<<"\[3] Oblicz: a*b"<<endl;
cout<<"\[4] Oblicz: a/b"<<endl;
cout<<"\[5] Pierwiastek 2giego Stopnia"<<endl;
cout<<"\[6] Pierwiastek 3ciego Stopnia"<<endl;
cout<<"\[7] Pole kola(A to promien)"<<endl;
cout<<"\[8] Twierdzenie Pitagorasa(Oblicz bok C)"<<endl;
cout<<"\[9] Twierdzenie Pitagorasa(Oblicz bok B)"<<endl;
cout<<"\[10] Twierdzenie Pitagorasa(Oblicz bok A)"<<endl;
cout<<"\[11] Pole Kwadratu"<<endl;
cout<<"\[12] Pole Trojkata"<<endl;
cout<<"\[13] Pole Trapezu"<<endl;
cout<<"\[14] Pole Prostokata"<<endl;
cout<<"\[15] Pole Rombu"<<endl;
cout<<"\[16] Objetosc Ostroslupa"<<endl;
cout<<"\[17] Objetosc Szescianu"<<endl;
cout<<"\[18] Podnoszenie do Potegi"<<endl;
cout<<"\[19] Zaokraglanie"<<endl;
cout<<"\[20] Fizyka: Predkosc"<<endl;
cout<<"\[21] Fizyka: Predkosc Chwilowa"<<endl;
cout<<"\[22] Fizyka: Predkosc Srednia"<<endl;
cout<<"\[23] Fizyka: Przebyta Droga(Ruch jednostajnie Przyspieszony)"<<endl;
cout<<"\[69] Koniec :)"<<endl;

cout<<"Wpisz numer obliczenia: ";
int wybor;
cin>>wybor;
cout<<""<<endl;
cout<<"Wpisales numer: "<<wybor<<endl;
cout<<""<<endl;
switch(wybor)
{
  case 1:
  cout<<"Liczba a =";
  cin>>a;
  cout<<"Liczba b =";
  cin>>b;
  cout<<"Wynik dodawania A+B="<<a+b<<endl;
  cout<<"";
  break;
  case 2:
  cout<<"Liczba a =";
  cin>>a;
  cout<<"Liczba b =";
  cin>>b;
  cout<<"Wynik odejmowania A-B="<<a-b<<endl;
  cout<<"";
  break;
  case 3:
  cout<<"Liczba a =";
  cin>>a;
  cout<<"Liczba b =";
  cin>>b;
  cout<<"Wynik mnozenia A*B="<<a*b<<endl;
  cout<<"";
  break;
  case 4:
  cout<<"Liczba a =";
  cin>>a;
  cout<<"Liczba b =";
  cin>>b;
  cout<<"Wynik dzielenia A/B="<<a/b<<endl;
  cout<<"";
  break;
  case 5:
  cout<<"Liczba a =";
  cin>>a;
  cout<<"Pierwiastek A="<<sqrt(a)<<endl;
  break;
  case 6:
  cout<<"Liczba a =";
  cin>>a;
  cout<<"Pierwiastek A="<<sqrt(a)<<endl;
  break;
  case 7:
  cout<<"Liczba r =";
  cin>>r;
  cout<<"Pole Kola="<<3.14*(r*r)<<endl;
  break;
  case 8:
  cout<<"Liczba a =";
  cin>>a;
  cout<<"Liczba b =";
  cin>>b;
  cout<<"Bok C="<<sqrt((a*a)+(b*b))<<endl;
  break;
  case 9:
  cout<<"Liczba a =";
  cin>>a;
  cout<<"Liczba c =";
  cin>>c;
  cout<<"Bok b="<<sqrt((c*c)-(a*a))<<endl;
  break;
  case 10:
  cout<<"Liczba c =";
  cin>>c;
  cout<<"Liczba b =";
  cin>>b;
  cout<<"Bok A="<<sqrt((c*c)-(b*b))<<endl;
  break;
  case 11:
  cout<<"Liczba a =";
  cin>>a;
  cout<<"OPole="<<a*a<<endl;
  break;
  case 12:
  cout<<"Liczba a =";
  cin>>a;
  cout<<"Liczba h =";
  cin>>h;
  cout<<"Pole="<<(a*h)/2<<endl;
  break;
  case 13:
  cout<<"Liczba a =";
  cin>>a;
  cout<<"Liczba b =";
  cin>>b;  
  cout<<"Liczba h =";
  cin>>h;  
  cout<<"Pole="<<((a+b)+h)/2<<endl;
  break;
  case 14:
  cout<<"Liczba a =";
  cin>>a;
  cout<<"Liczba b =";
  cin>>b;
  cout<<"Pole="<<a*b<<endl;
  break;
  case 15:
  cout<<"Liczba d1 =";
  cin>>a;
  cout<<"Liczba d2 =";
  cin>>b;
  cout<<"Pole="<<(a*b)/2<<endl;
  break;
  case 16:
  cout<<"Liczba h =";
  cin>>a;
  cout<<"Liczba s =";
  cin>>b;
  cout<<"Pole="<<(h*s)/3<<endl;
  break;
  case 17:
  cout<<"Liczba a =";
  cin>>a;
  cout<<"Pole="<<a*a*a<<endl;
  break;
  case 18:
  double liczba,potega;
  cout<<"Podaj liczbe: ";
  cin>>liczba;
  cout<<"Do ktorej potegi podniesc liczbe "<<liczba<<"? Wpisz wartosc: ";
  cin>>potega;
  cout<<"pow("<<liczba<<","<<potega<<")="<<pow(liczba,potega)<<endl;
  break;
  case 19:
  double a;
  cout<<"Podaj liczbe: ";
  cin>>a;
  cout<<"Zaokraglona liczba wynosi:"<<a<<endl;
  break;
  case 20:
  cout<<"Podaj przemieszczenie: ";
  cin>>a;
  cout<<""<<endl;
  cout<<"Podaj Czas Przemieszczenia: ";
  cin>>b;
  cout<<""<<endl;
  cout<<"Predkosc Wynosi:"<<a/b<<endl;
  break;
  case 21:
  cout<<"Podaj przemieszczenie: ";
  cin>>a;
  cout<<""<<endl;
  cout<<"Podaj przyrost Czasu: ";
  cin>>b;
  cout<<""<<endl;
  cout<<"Predkosc Chwilowa Wynosi Wynosi:"<<a/b<<endl;
  break;
  case 22:
  cout<<"Podaj przemieszczenie: ";
  cin>>a;
  cout<<""<<endl;
  cout<<"Podaj czas trwania ruchu(przyrost czasu): ";
  cin>>b;
  cout<<""<<endl;
  cout<<"Predkosc srednia wynosi:"<<a/b<<endl;
  break;
  case 23:
  cout<<"Podaj przyspieszenie: ";
  cin>>a;
  cout<<""<<endl;
  cout<<"Podaj jednostke przyspieszenia (bez sekund itp. tylko metry kilometry itp.)"<<endl;
  char jednostka[100];
  cin>>jednostka;
  cout<<"Podaj czas trwania ruchu: ";
  cin>>b;
  cout<<""<<endl;
  cout<<"Przebyta droga:"<<(a*(b*b))/2;
  cout<<""<<jednostka;
  break;  
  default:
  getch();
  return(0);
  case 69:
  cout<<"LOL Chcesz Wyjsc?"<<endl;
  cout<<"No to czesc "<<wyraz<<endl;
  cout<<"Program CyrioCALC Zostal Wykonany Przez Cyria"<<endl;
  cout<<"*-*-*"<<endl;
  cout<<"Wcisnij dowolny Klawisz aby Wyjsc z Programu"<<endl;
  getch();// Program autorstwa Cyrio
  return(0);// :) wiem ze fajny xD
}}while(1);// kogzamy ;o
}


moglby ktoś mi pomóc i naprawić ten kod?

Data: 2007-10-07 18:03:59

Piotr Szawdyński


Sądzę, że w obecnym stanie w jakim masz ten kod nikt się nie podejmie jego poprawniania, ze względu na to, że:

a) liczba nawiasów otwierających bloki jest różna od liczby bloków zamykających

b) często używasz zapisu return(0);

c) zagnieżdżasz switch... case

d) używasz takiego zapisu: }while(1);// kogzamy ;o  kilkukrotnie

e) program wygląda jak sklejany z kilku źródeł, a następnie wrzucony dlatego, że się nie kompiluje

f) prawdopodobieństwo, że ten cały program napisałeś sam bez ani jednej kompilacji jest bliskie zeru. Błędy nie pojawiły się nagle, tylko są moim zdaniem wynikiem tego, że źle go poskładałeś.

Moim zdaniem powinieneś wrócić do kursu i kompilować swoje projekty na bieżąco. Zgłaszaj się na forum z problemami, gdy masz już jeden problem z kompilacją, a nie wiele błędów.

Reasumując:

postaraj się wydzielić bloki które Cię interesują, żeby ktoś Ci poprawił (były poprawne składniowo) bo nie wiesz jak to zrobić, a nie dajesz caały długi program który ma wiele błędów, których poprawienie może zająć nawet z godzinę dla dobrego programisty.

Data: 2007-10-07 19:03:03

Cyrio


a) program pisałem sam.
b) zostane przy starej wersji
ta wersja którą tu pokazałem była próbą zrobienia
wielopoziomowego menu majacego usprawnic program wesoły
wkońcu to tylko program do liczenia zadań domowych ;D

c) topik mozna zamknac
xD

Data: 2007-10-07 19:32:08

Piotr Szawdyński


a) program pisałem sam.
b) zostane przy starej wersji
ta wersja którą tu pokazałem była próbą zrobienia
wielopoziomowego menu majacego usprawnic program wesoły
wkońcu to tylko program do liczenia zadań domowych ;D

c) topik mozna zamknac
xD


Możesz zrobić wielopziomowe menu np. tak:


switch(...)
{
  case 1:
  switch(...)
  {
    case 1:
    break;
  } 
  break;
}


Problem w tym, że czytelność kodu staje się bardzo słaba i dość trudno jest później taki kod rozbudowywać.

Jeśli chcesz, aby Twoje programy z wielopoziomowym menu zawsze były sprawne to:
1. tworzysz najpierw jeden poziom
2. Jeśli cały jeden poziom Tobie działa to
3. Tworzysz osobno drugi poziom (bez zagnieżdżania)
4. Jeśli cały drugi poziom działa sprawnie to
5. Wycinasz poziom który ma być zagnieżdżony i wklejasz go do drugiego w odpowiednie miejsce, które Ciebie interesuje.

W ten sposób zapewnisz sobie poprawność kodu i wszystko będzie działało si wesoły

1



Statystyki tematuOstatnio przeczytali
Czytało użytkowników:49Graku, programista12, malan, fish13, lenrokskate, SeaMonster131, Mackooff, grzesiekz, Qtk, Pietrzuch, Lunatyk, adam12332, Rudy, szkuner, Grylly, Artair, kefirek18, Dante, Marcin, pekfos, Haker123, Matiz, Dybusek, Ju1ian, driver1995, krdk, kamillo121, matic, celi1962, Bombasarkadian
Przeczytało użytkowników:49
Czytało osób ogólnie:101
Przeczytało osób ogólnie:101



PowrótPowrótHistoria odwiedzonych stron
Panel Logowania
Login:
Hasło:

Użytkowników
Obecnie aktywnych:11
Zalogowanych:0
Zarejestrowanych:4367
Ostatnie 24h:538
Non-cookie 24h:2685
Wszystkich:214118
Ostatnia Aktualizacja
2010-09-01 19:27:34 (4 dni temu)
Ostatnio aktywni
wiew20 min
Koni31 min
Mateusz12434 min
fish1361 min
wiewiorka74 min
lenrokskate8 godz
dmx8110 godz
steckel11 godz
pixelmaster14 godz
maciejo14 godz
jurasnumeras15 godz
Imperator_Edi16 godz

Wynajem Sopot - wakacje
Pokój 2 osobowy 130zł/doba;
Lokalizacja: Sopot


O portaluArchiwumHistoriaIndeksRegulaminWyszukiwarkaLinki
Kurs HTML - strona WWW za darmoRestauracja "ATOL" - SopotValid HTML 4.01 TransitionalValid CSS!HTML CSS JavaScript FLASH PHP MySQL