Wróć   Sdcv.pl - Forum komputerowe > Pc Hardware & Soft-Support > Programowanie


Programowanie języki, projekty, pomoc, oprócz html, php, js



 
Narzędzia wątku
Stare 11-01-09, 18:36   #1
maciek8888
..:: Trial Member ::..
 
Awatar maciek8888
 
Dołączył: Nov 2008
Posty: 12
Rozdane podziękowania: 3
Podziękowano mu 1 raz
Siła reputacji: 36
maciek8888
Domyślnie C++ pomoc

Witam wszystkich. Mam problem z zadaniem. Musze napisać program, który pobiera z klawiatury kolejne liczby rzeczywiste (maksymalnie 1000 liczb) i zapisuje je do pliku w kolejności odwrotnej
do kolejności wprowadzania. UWAGA - należy zdefiniować, funkcję push, pop i stanStosu w klasie LICZBY i wykorzystać
je do operowania na danych. Proponowana definicja klasy:
class LICZBY
{
private: double T[1000]; //tu odkładać liczby
int szczyt;
public: STOS_LICZ() {szczyt = 0;} //konstruktor
void push(double liczba);
double pop(void);
int stanStosu(void); //zwraca 0-stos pusty, 1-stos OK, 2-stos pełny

Nie wiem za bardzo jak poradzic sobie z tym. Napisalem wprawdzie program, ale nie wiem czy to tak ma byc. Prosiłbym o pomoc przy napisaniu jego i poprawieniu tego co juz mam z góry pieknie dziekuje.
A oto program:


#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <iostream.h>
#include <iomanip.h>
#include <fstream.h>
#include <math.h>
#include <string.h>
class LICZBY
{
private:
double T[1000]; //tu odkładać liczby
int szczyt,ilosc;
float liczba,*p;
char a[50];
public:
LICZBY(void);// {szczyt = 0;} //konstruktor
void push(double liczba);
double pop(void)
{return liczba; }
//int stanStosu(void); //zwraca 0 - stos pusty, 1 - stos OK, 2 - stos pełny
};
LICZBY::LICZBY(void)
{
cout<< "Podaj ilosc liczb: "<<endl;
cin >> ilosc;
}
void LICZBY::Push(double liczba)
{
do
{
sprintf(a,"%e",T);
} while (ilosc<liczba);

/*
float T=1000;
//int i, n = 1000;
for (liczba = 0; liczba <= T; liczba++)
for (liczba = 0; liczba < T; liczba++)
cout<< liczba << " ";
cout<< endl;
//delete[] p; // usuniecie tablicy
system("PAUSE");
//return 0;
*/

}

int main(void)
{
char nazwapliku[20];
//float *p;
//int ilosc;
double T[1000];
double *p,liczba, ilosc;
LICZBY L1;
L1.push(50);
cout<<"Liczby: "<<L1.pop()<<endl;
getch();
clrscr();
cout<<"Podaj nazwe pliku (pamietaj o rozszerzeniu): ";
cin >> nazwapliku;
ofstream wy(nazwapliku);
//do
//{
p = new double [ilosc]; // Alokacja pamięci
for (liczba = 0; liczba < T; liczba++)
p[liczba] = ilosc - liczba;
for (liczba = 0; liczba < T; liczba++)
wy<< p[liczba] << " ";
wy<< endl;
delete []p;
//} while (liczba>ilosc);
wy.close();
system("PAUSE");
}
maciek8888 jest offline  
Stare 15-01-09, 11:57   #2
emade
..:: Senior Member ::..
 
Awatar emade
 
Dołączył: Jul 2007
Posty: 220
Rozdane podziękowania: 17
Podziękowano mu 32 razy
Siła reputacji: 49
emade emade
Domyślnie Odp: C++ pomoc

Jak się patrzy na ten kod - to ręce opadają :P Gdzie wcięcia ? Najlepiej wstawiaj swoje kody na New - Pastie to zawsze szybciej znajdzie się ktoś, kto pomoże, bo tutaj teraz to nic nie widać ;)
emade jest offline  
Stare 28-01-09, 13:51   #3
zbigolo
..:: Trial Member ::..
 
Awatar zbigolo
 
Dołączył: Dec 2007
Posty: 6
Rozdane podziękowania: 1
Podziękowano mu 1 raz
Siła reputacji: 0
zbigolo
Domyślnie Odp: C++ pomoc

Witam
Oto Twój program po przeróbce:

Treść widoczna tylko dla użytkowników forum SdCv.pl Zaloguj się lub załóż darmowe konto na forum aby uzyskać dostęp bez limitów.

Pozdrawiam
zbigolo jest offline  
zbigolo otrzymał podziękowania za ten przydatny post od:

Tagi
pomoc


Podobne wątki
Wątek Autor wątku Forum Odpowiedzi Ostatni post / autor
pomoc brciak Gry na PC 1 28-12-08 17:06
pomoc kicaj22 Poradniki 1 12-12-08 13:42
Pomoc Mizzrim Poradniki 1 27-11-08 23:30
prosze o pomoc ziom1996 Wielki Search 3 22-06-08 13:27
porosze o pomoc artek999 Sprzęt 1 20-05-08 11:21


Narzędzia wątku


Witaj na Sdcv.pl! - Najlepszym forum komputerowym!
Zarejestruj się, a gdy tylko aktywujesz swoje konto, będziesz miał(a) pełny dostęp do zawartości forum!
Nowe znajomości i ciekawe dyskusje, są na wyciągnięcie ręki !



Powered by vBulletin®
Copyright © Sdcv.pl 2007 - 2018
Czasy w strefie GMT +2. Teraz jest 06:21.