Hej :) Zaczynam dopiero programować, więc proszę o wyrozumiałość :) Mam napisać program, który bd z współrzędnych obliczał mi pola figury, dodatkowo ma to być na tablicy dwuwymiarowej - chodzi by w pliku tekstowym było 1,4 i pod tym kolejna współrzędna.
Z jakiegoś powodu po włączeniu programu, automatycznie przechodzi do ostatniej linii. Za pewne chodzi o jakąś głupotę, ale nie widzę błędu. Dodatkowo, jezeli ktoś zauważy coś co w ogóle nie powinno mieć miejsca w kodzie to proszę o wskazanie mi tego. Z góry dzięki : )
#include <iostream>
#include <fstream>
#include <math.h>
#include <cstdlib>
#include <string>
#define TAB "\t"
#define Dane "punkty.txt" // Sciezka pliku do odczytu - wspolrzedne
#define Obliczenia "wynik.txt" // Sciezka pliku do zapisu wyniku obliczenia
#define exit() system("cls") // Koniec programu
using namespace std;
#define M_PI 3.14159265358979323846
const int rozmiar = 20; //Rozmiar tablicy dwuwymiarowej
ofstream Wynik(Obliczenia); //
int i,j, punkty;
double w0=0, w1 = 0;
double suma = 0;
double zero = 0;
char znak [5];
int main() {
ifstream dane(Dane, ios::in); // Ustawiam, ze plik ma zostac odczytany
int liczbaPunktow, n = 0;
double tabN[rozmiar];
double tabX[rozmiar], tabY[rozmiar]; // tablica dla wspolrzednych punktow
string linia;
if(dane, (getline(dane, linia, ',') || getline(dane, linia, '\n'))){
// Otwarcie pliku, odczyt danych
for(i = 0; i < 4; i++){
for(j = 0; j < 4; j++)
cin >> tabX[i], tabY[j]; // wczytanie wspolrzednych do tablicy
}
} else{
cout<<"Brak pliku" << endl; // sprawdz lokalizacje pliku
}
if(liczbaPunktow = !8){
cout<< "Brak wszystkich parametrow" <<endl; //brak wszystkich punktow, badz wspolrzednych w pliku z Danymi - (x,y)
}
tabN[0]=tabN[n];
tabX[0]=tabX[n]; tabY[0]=tabY[n];
tabN[n+1]=tabN[1]; tabX[n+1]=tabX[1]; tabY[n+1]=tabY[1];
cout << "\nObliczenie " << zero << endl;
cout << "Pole: " << znak << " Ilosc punktow: " << n << endl;
cout << "\nWykaz punktow:" << endl;
cout << "Lp Nr X Y " << endl;
Wynik << "Obliczenie " << zero << endl;
Wynik << "Pole: " << znak << " Ilosc punktow: " << n << endl;
Wynik << "\nWykaz punktow: " << endl;
Wynik << "Lp Nr X Y " << endl;
for(int i=1; i<=n; i++ )
{
cout << i << TAB << tabN[i] << TAB << tabX[i] << TAB << tabY[i] << endl;
Wynik << i << TAB << tabN[i] << TAB << tabX[i] << TAB << tabY[i] << endl;
//s1+=tabX[i]*(tabY[i+1]-tabY[i-1]);
//s2+=tabY[i]*(tabX[i+1]-tabX[i-1]);
}
}