Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Zapisywanie tekstu do pliku

Ostatnio zmodyfikowano 2009-01-07 12:49
Autor Wiadomość
Jaszczomb
Temat założony przez niniejszego użytkownika
Zapisywanie tekstu do pliku
» 2009-01-07 12:36:44
Witam
Napisałem program wypisujący liczby do pliku od x do y. Wygląda on tak:
C/C++
#include <iostream>
#include <fstream>
#include <conio.h>
#include "console.ddt"
#include <windows.h>
using namespace std;
using namespace ddt::console;
int main()
{
    unsigned int a, wybor, b;
    int liczba[ a ];
    fstream plik( "liczby.txt", ios::out ); //sprawdzenie pliku
    do //pętla wypisywania liczb
    {
        SetConsoleTitle( "Program Jaszczomba" );
        cout << "Witaj" << endl;
        cout << "Program wypisuje liczby z zakresu wybranego przez uzytkownika " << endl;
        cout << "i zapisuje je do pliku liczby.txt" << endl;
        cout << "w folderze z Tym programem." << endl;
        cout << " " << endl;
        cout << "Od ktorej liczby wypisywac?" << endl;
        cin >> b;
        cout << "Do ktorej liczby wypisywac?" << endl;
        cin >> a;
        plik << b;
        plik << " ";
        if( a << b )
        {
            for( int i = b; i < a; i++ )
            {
                cout <<( i + 1 ) << endl;
                plik <<( i + 1 );
                plik << " ";
                plik.flush();
            }
        } else cout << "Blad! Pierwsza z podanych liczb musi byc mniejsza od drogiej!" << endl;
       
        plik.close();
        cout << "Powtorzyc wypisywanie?" << endl; // Po pętli
        cout << "[1]=tak [2]=nie" << endl;
        cin >> wybor;
        clrscr();
    }
    while( wybor <= 1 ); //Po programie
   
    SetConsoleTitle( "Program Jaszczomba" );
    cout << " " << endl;
    cout << "                              Do widzenia" << endl;
    getch();
    return( 0 );
}
Program zapisuje liczby lecz jedną po drugiej czyli 1 2 3.....
Chciałbym natomiast aby w pliku zapisywane byłyby jedna pod drugą, w ten sposób:
1
2
3
Proszę o podanie mi kodu zmienionego pliku i wyjaśnienie co zrobiliście.
Dzięki z góry. Pozdrawiam
P-3532
zori
» 2009-01-07 12:45:51
Twoja petla for powinna wyglądac tak:
C/C++
for( int i = b; i < a; i++ )
{
    cout <<( i + 1 ) << endl;
    plik << " \n";
    plik <<( i + 1 );
    plik.flush();
}
P-3533
Jaszczomb
Temat założony przez niniejszego użytkownika
» 2009-01-07 12:49:23
Dzięki Zori teraz program działa jak należy.
P-3534
« 1 »
  Strona 1 z 1