Wątek zablokowany 2015-01-20 01:19 przez furious programming.

Kłopot z napisaniem programu do wprowadzania współrzędnych statków.

0

witam, mam problem z plikami w języku c. Teoretycznie wszystko rozumiem, ale praktycznie jest już gorzej, mam do napisania program, jakby ktoś mógł mi pomóc w napisaniu jego będzie mi łatwiej zrozumieć jak pisać tego typu programy. Z góry dziękuje za pomoc. oto treść zadania:

Stwórz plik tekstowy zawierający dane o statkach zapisane wg następującego formatu:

n
x_1 y_1 nazwa_1
x_2 y_2 nazwa_2
x_3 y_3 nazwa_3
....
x_n y_n nazwa_n

gdzie n jest liczbą statków zapisanych w pliku, x i y określają współrzędne (liczby rzeczywiste) każdego statku a nazwa składa się maksymalnie z 30 znaków.

Napisz program, który:

wypisze na ekranie współrzędne wszystkich statków znajdujące się w pliku (nazwa pliku pobierana jest od użytkownika).
następnie pobierz od użytkownika współrzędne oraz zasięg radaru i do pliku wynikowego zapisz informacje o tych statkach, które znajdują się w jego zasięgu. Format pliku wynikowego jest taki sam jak format pliku wejściowego.
(na ocenę wyższą niż 3.0) w trakcie wypisywania współrzędnych statków wykrzyknikami oznacz 5 tych, które znajdują się najbliżej radaru.

Podział programu na funkcje, użycie struktur i tablic dynamicznych wpływa na podniesienie oceny.

0

to jak otwierać lub zapisywać pliki wiem. ogólne zasady już poznałem. ale ciągle próbuje napisać ten program i nic mi nie wychodzi, dlatego proszę o to by ktoś mi pomógł napisać ten program, wtedy go przeanalizuje i zrozumiem jak dokładnie jak to robić

1

Chrzani waść:

  unsigned n,x,y;
  char name[100];
  FILE *fd=fopen ("myfile.txt","r");
  fscanf(fd,"%u",&n);
  while(fscanf(fd," %u %u %s",&x,&y,name)==3) printf("wczytano %u %u %s\n",x,y,name);
0

powiem tak, jestem na studiach informatycznych (wcześniej z programowaniem nie miałem ort!) i mamy wykładowczynie która zupełnie nic nie uczy. Na zaliczeniu dostalismy taki program do napisania, a nie mielismy nic o plikach, znalazłem w internecie jak tworzyć plik jak odczytywać ale nic mi to nie mówi, więc nie wiem nawet jak zabrać sie za napisanie tego programu, dlatego poprosiłem o pomoc. Z góry mówie że nie szukam kogoś żeby sie wysłużyć, tylko jak będe miał treść zadania i do tego napisany program to analizując to dojde do tego jak pisać programy tego typu

0

Czyli chcesz gotowca - za darmo nie dostaniesz, zaś 100 zł będzie akurat.

1

Czesc, przy pomocy życzliwej osoby rozwiązaliśmy jakoś te zadanie ( na 3) więc moge się podzielic
koleżanka z grupy :)

#include<fstream>
#include<iostream>
#include<string>
using namespace std;
struct statek{
string nazwa;
float x;
float y;};
int main()
{std::fstream plik;
string nazwa;
cout<<"podaj nazwę pliku";
cin>>nazwa;
plik.open(nazwa);
if (plik.good()==true){
    cout<<"plik otwarty";
    string dane;
    while(getline(plik, dane)){
    cout<<dane<<endl;}
    plik.close();}
    plik.open(nazwa);
    float x;
    float y;
    int zasieg;
   cout<<"podaj x";
   cin>>x;
   cout<<"podaj y";
   cin>>y;
   cout<<"podaj zasieg";
   cin>>zasieg;
   std::fstream plik2;
   plik2.open("plikwynikowy.txt");
   while(!plik.eof()){
        statek w;
plik>>w.x;
plik>>w.y;
plik>>w.nazwa;
if(w.x<x+zasieg && w.x>x-zasieg&&w.y<y+zasieg&&w.y>y-zasieg){
    plik2<<w.x<<" "<<w.y<<" "<<w.nazwa;
cout<<w.x<<" "<<w.y<<" "<<w.nazwa;
}





   }



return 0;

}

dodanie znacznika <code class="c"> - @furious programming

0

Skoro taki z Ciebie zawodowiec to trzeba było pomóc koledze, a nie tylko kpisz z ludzi którzy starają się pomóc. Jestem na pierwszym semestrze informatyki i dopiero stawiam pierwsze kroki w tej materii, ciekawa jestem czy też tak cwaniakowałeś jak byłeś na pierwszym roku.

0
Złoty Kaczor napisał(a):

... ciekawa jestem czy też tak cwaniakowałeś jak byłeś na pierwszym roku.
Zdecydowanie tak, od pierwszego roku pisałem kody za kasę nawet dla tych z ostatniego oraz na magisterkę. Cwaniactwo nieco poprawia budżet.

0

no to [CIACH!] ze jestes taki [CIACH!], pewnie nie masz ciekawszych zajec tylko ciagle siedzisz w kodzie, pasjonujace doprawdy, jak tak sie przechwalasz to w sumie sie nie dziwie ze nic innego Ci nie pozostaje, bo ludzie raczej nie przepadają za takim i przemadrzalskimi

0

Widocznie Tobie nikt nigdy nie pomógł bezinteresownie, ale nic to szkoda czasu na ta dyskusje każdy ma swój własny kodeks moralny. Dla kolegi życze powodzenia, znam ten bol bo samej ciezko mi to wszystko zrozumiec.

0

Wielkie dzięki za pomoc Złoty Kaczor, może w końcu zrozumiem te zadanie

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