Odczyt danych z pliku #c++ #problem_z_odczytem

Odpowiedz Nowy wątek
2020-01-03 18:37

Rejestracja: 6 miesięcy temu

Ostatnio: 3 tygodnie temu

0

Witam

Mam takie zadanie: Z pliku o nazwie podanej przez użytkownika wczytać dane do wektorów a i b [n] (n-stała). Obliczyć iloczyn skalarny tych wektorów. Wydrukować wektory dane i obliczony iloczyn.

Problem polega na tym że nie bardzo wiem gdzie umieścić plik z danymi aby można było pobrać dane do zadania, lub gdzie podać ścieżkę do pliku. Na ta chwilę plik z danymi znajduje się w tym samym katalogu co plik main.cpp
Jest to plik z rozszerzeniem .txt. i nazywa się maciek

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

using namespace std;
const int n = 4;

int main(int argc, char* argv[])
{
    ifstream dane;
    double a[n], b[n];
    double iskl;        //iloczyn skalarny
    string nazwa;

    cout << "Z jakiego pliku wczytywac wektory?\n";
    cin >> nazwa;
    dane.open(nazwa.c_str());
    if (!dane.good());
    {
        cout << "Problem z otwarciem pliku\n ";
        return 1;
    }

    for (int i = 0; i < n; i++)
        dane >> a[i];

    for (int i = 0; i < n; i++)
        dane >> b[i];

    dane.close();

    cout << "Wektor a: \n";
    for (int i = 0; i < n; i++)
    {
        cout << a[i] << " ";
        cout << endl;       
    }

    for (int i = 0; i < n; i++)
    {
        cout << b[i] << " ";
        cout << endl;
    }

    iskl = 0;

    for (int i = 0; i < n; i++)
        iskl += a[i] * b[i];

    cout << "Iloczyn skalarny wektorow jest rowny: " << iskl << endl;

    return 0;
}

Pozostało 580 znaków

2020-01-03 18:43

Rejestracja: 6 lat temu

Ostatnio: 5 godzin temu

0

Problem polega na tym że nie bardzo wiem gdzie umieścić plik z danymi aby można było pobrać dane do zadania,

Najlepiej pobierać nazwę pliku z danymi wejściowymi z linii komend.


My to na arm napiszemy wszystko i zrobimy co chcemy tyle że 90% kodu to biblioteki z netu albo robota kompilatora Zdajesz sobie sprawę że tak na prawdę wyższy poziom języka może świadczyć jedynie o tym jak niskim poziomem wiedzy może dysponować bałwan,który nazwie się w rezultacie programistą i napisze działający program wciskając zleceniodawcy że tam to akurat musi być 100MHz ARM z 1M pamięci bo tak na prawdę jego pusta łepetyna nie potrafi zrealizować czegoś na innym słabszym mikrokontrolerze

Pozostało 580 znaków

2020-01-03 20:44

Rejestracja: 10 lat temu

Ostatnio: 4 godziny temu

0

Problem polega na tym że nie bardzo wiem gdzie umieścić plik z danymi aby można było pobrać dane do zadania, lub gdzie podać ścieżkę do pliku

Trzeba było lepiej autora kodu dopytać - nie hejtuje, tak na przyszłość. Masz jak byk zrobioną obsługę pliku tutaj:

cout << "Z jakiego pliku wczytywac wektory?\n";
cin >> nazwa;
dane.open(nazwa.c_str());

Jak skompilujesz ten program i go uruchomisz, to sam Cie zapyta o podanie pliku.


Pozostało 580 znaków

2020-01-04 12:51

Rejestracja: 6 miesięcy temu

Ostatnio: 3 tygodnie temu

0

To zadanie z podręcznika na studiach. Autorem kodu jestem ja, a zapisałem tak a nie inaczej bo tak to było opisane w lekcji o plikach.

Pozostało 580 znaków

Odpowiedz

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0