Forum CDRinfo.pl

Forum CDRinfo.pl (https://forum.cdrinfo.pl/)
-   Off topic (https://forum.cdrinfo.pl/f5/)
-   -   Potrzebne programy w C++ (https://forum.cdrinfo.pl/f5/potrzebne-programy-c-59990/)

Ghost_mode 19.12.2005 11:39

Potrzebne programy w C++
 
Potrzebuję programów w Cpp
obliczających za pomocą algorytmów (interpolacji) Newtona, Lagrange'a, Neville'a, Czebyszewa, Hornera...

Jeżeli wiecie gdzie zdobyć cokolwiek z wymienionych proszę o kontakt.
Potrzebne na wczoraj :) I cos mi sie wydaje, że sam nie zdążę tego napisać ...

ksviper 19.12.2005 11:41

mogę spróbować napisać ale muszę mieć dobre algorytmy

wiem że można znaleźć algorytmy w Numerical Recipes ale niestety nie posiadam tej książeczki, ciężko ją zdobyć w bibliotekach uczelnianych

znalazłem na sieci gościa który powinien to mieć, nie wiem tylko czy adres mail jest aktualny: psychorzow@poczta.onet.pl

wiecej na stronie forum

poczytaj jeszcze o Metody numeryczne w C++ Builder

no i oczywiście google ;)

Ghost_mode 19.12.2005 12:12

thx za zainteresowanie :piwo:
http://www.skrypt.pl/index.php?d=prace&p=277
^^ jak byś dał radę na podstawie tego zrobić neville'a byoby super...

dziś w nocy muszę wysłać te progsy w cpp a czasu mało :wow:

ksviper 19.12.2005 12:18

tak szybko to napewno nie dam rady, pracę kończę o 15.30 a pospać też trochę muszę

zerknij tu - to nie jest moja ofeta ;)

Ghost_mode 19.12.2005 12:20

Cytat:

Napisany przez ksviper
tak szybko to napewno nie dam rady, pracę kończę o 15.30 a pospać też trochę muszę

no na kiedy dasz radę to zrób - o ile byś miał czas i chęci ... ;)
Co zrobie sam wyślę dziś a co nie zdążę to może uda sie później ...

ksviper 19.12.2005 12:24

na poświęta mogę spróbować ale nic nie obiecuję

Kasprzak 12.05.2007 12:01

odswiezam troche stary temat, ale poszukuje programu, oparty na obiektowym (klasy i dziedziczenie jakies itp.), ktore zawiera jakies dane (np. ksiazka telefoniczna - imie, nazwisko, telefon i takie tam). Ktore by przy otwarciu programu wczytywalo plik (na samym poczatku funkcja zapisu w mainie by byla wywolywana, a na koncu zapisywalo zmiany (funkcja na koncu by byla wywolywana)
Glownie chodzi o zrobienie takiej bazy na klasach zeby cos dziedziczylo itp. Niby proste, ale nie moge sobie z tym poradzic :(

ps. i nie wiem jak napisac modyfikacje wpisu (np. wyswietla sie:
Edytujesz:
id[3] Jan, Kowalski, 232424324, cos tam
wpisz nowe Imie,Nazwisko,Nr,Cos tam. np.


napisalem cos takiego i nie dziala (narazie funkcje wstawilem tak zeby sprawdzic czy dziala wywolanie - takze nie robia sie na wstpie i koncu programu ale to pozniej... i ogolnie tak: w DevC++ nie wywala bledu, ale zapisuje plik w takiej formie ze :| :| :| nie do odczytu, Borland Personal 6 wywala blad debuggera jakis z alokacja pamieci chyba. Co to moze byc. :
Kod:

#include <cstdlib>
#include <iostream>
#include <fstream>

#define MAX_WPISOW 100

using namespace std;

class TKsiazka {
      private:
              struct SWpis { // struktura wpisu kazdego jednego :)
                    int id; // tutaj id do kasowania/zerowania
                    string imie, nazwisko;
                    long int nrtel;
              } Wpis[MAX_WPISOW]; // maksymalnie 11 bo liczac od 0
      public:
            TKsiazka(); // konstruktor
            void dodaj(string imie, string nazwisko, long int nr);
            void zapiszDoPliku(char *sciezka);
            void zaladuj(char *sciezka);
            int wolny(void);
            string pokaimie(int id);
};

// wyzerowanie calej tsblicy wpisow, zawczasu :)
TKsiazka::TKsiazka() {
                for (int i=0;i<MAX_WPISOW;i++)
                    Wpis[i].nrtel = 0;
}

string TKsiazka::pokaimie(int id) {
      return Wpis[id].imie+"\n";
}

void TKsiazka::zaladuj(char *sciezka) {
    FILE *fd;
   
    fd = fopen(sciezka, "r");
   
    if (!fd) {
              cout << "Nie moge otworzyc pliku." << endl;
              return;
    }
   
    //fseek(fd, 0, SEEK_SET);
    //while (!feof(fd))
          fread(&Wpis, sizeof(Wpis), 1, fd);
}

void TKsiazka::dodaj(string imie, string nazwisko, long int nr) {
    int i = wolny(); // zmienna i ma id pierwszego wolnego wpisu, ktory zostanie zapisany pod tym id.
   
    Wpis[i].id = i;
    Wpis[i].imie = imie;
    Wpis[i].nazwisko = nazwisko;
    Wpis[i].nrtel = nr;
}

int TKsiazka::wolny(void) {
    for (int i=0;i<MAX_WPISOW;i++)
        if (!Wpis[i].imie.length())
          return i;
}

void TKsiazka::zapiszDoPliku(char *sciezka) {
    FILE *fd;
   
    fd = fopen(sciezka, "w+");
   
    for (int i=0;Wpis[i].nrtel;i++)
        fwrite(&Wpis, sizeof(Wpis), 1, fd);
   
    /*ofstream fd;
   
    fd.open(sciezka);
   
    for (int i=0;Wpis[i].nrtel;i++) {
        fd << Wpis[i].id << endl;
        fd << Wpis[i].imie << endl;
        fd << Wpis[i].nazwisko << endl;
        fd << Wpis[i].nrtel << endl;
    }
   
    fd.close();
    */
}

// otwieranie analogicznie tyle ze zmienna juz bedzie ifstream

int main(int argc, char *argv[])
{
    TKsiazka ktel;
    string i, n;
    long int nr;
   
    cout << "Podaj imie potem nazwisko i numer" << endl;
    cin >> i >> n >> nr;
   
    ktel.dodaj(i, n, nr);
    ktel.zapiszDoPliku("dupka.txt");
    ktel.zaladuj("dupka.txt");
   
    cout << ktel.pokaimie(0);
   
    system("PAUSE");
    return EXIT_SUCCESS;
}


pawelblu 12.05.2007 12:42

C nalezy do jezykow strukturalnych.
C++ do jezykow obiektowych.

Wiec pierwsza rzecz ktora mi sie osobiscie nie podoba to ten struct. Powinna byc tablica (albo lepiej jakas twoja kolekcja slownikowa) obiektow klasy Wpis. Klase Wpis definiujesz jako:

Kod:

                    int id; // tutaj id do kasowania/zerowania
                    string imie, nazwisko;
                    long int nrtel;

Moze to juz cos poprawi, albo chociaz ruszy cos na przod.


Wszystkie czasy w strefie CET. Aktualna godzina: 02:32.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2025, vBulletin Solutions Inc.