infoarena

infoarena - concursuri, probleme, evaluator, articole => Informatica => Subiect creat de: Coman Diana din Decembrie 22, 2012, 10:22:44



Titlul: Fisiere
Scris de: Coman Diana din Decembrie 22, 2012, 10:22:44
Buna! Eu sunt incepatoare si am o mica nedumerire. La unele probleme zice "datele de intrare se vor citi in fisierul 'fisier.in', iar datele de iesire in fisierul 'fisier.out' ". am creat in Notepad fisierele 'fisier' cu extensia in si 'fisier' cu extensia 'out' si am scris in pascal urmatorul program:
program fisier;
var a,b:integer;
    f,g:text;                
begin
  assign(f,'fisier.in');reset(f);
  assign(g,'fisier.out');rewrite(g);
  readln(f,a);
  readln(f,b);
  writeln(g,a+b);
  close(f); close(g);
end.

am introdus 2 valori in fisierul 'fisier.in' , si am dat CTRL+F9 in FPC. mi-a aparut un mesaj
Program d:\New Folder\fisier.exe
exited with
exitcode=2

In 'fisier.out' nu a aparut nimic.

Ce ar trebui sa fac pentru ca programul sa functioneze corect?


Titlul: Răspuns: Fisiere
Scris de: George Marcus din Decembrie 22, 2012, 12:00:51
Mie imi functioneaza corect acest cod sursa. Verifica cu atentie extensiile fisierele si caile.


Titlul: Răspuns: Fisiere
Scris de: Coman Diana din Decembrie 22, 2012, 13:24:40
ciudat. fisierele trebuie a se afle in acelasi folder cu programul (salvat)?


Titlul: Răspuns: Fisiere
Scris de: George Marcus din Decembrie 22, 2012, 16:08:06
Trebuie sa se afle in acelasi folder cu executabilul.


Titlul: Răspuns: Fisiere
Scris de: Puscas Sergiu din Decembrie 24, 2012, 15:42:59
s-ar putea sa primesti eroarea cand numerele din fisier.in sunt pe aceeasi linie.


Titlul: Răspuns: Fisiere
Scris de: Coman Diana din Decembrie 24, 2012, 16:35:43
cum adica?
Cum trebuie sa bag datele de intrare


Titlul: Răspuns: Fisiere
Scris de: Simoiu Robert din Decembrie 24, 2012, 16:39:19
Fisierul de intrare trebuie sa fie asa :
Cod:
124
95
Si nu asa :
Cod:
124 95
Daca vrei sa fie ca in cazul 2, faci readln (f, a, b), sau read (f, a), read (f, b) (sa nu citeasca linie noua).


Titlul: Răspuns: Fisiere
Scris de: sava andreea din Ianuarie 13, 2013, 14:47:54
buna!am si eu o problema trebuie sa fac un program care sa contina instructiuni de salt pentru un microprocesor pe 8 biti.ideea ar fi sa fac un fisier text care sa contina instructiunile si in c++ sa citesc fisierul si sa recunosc toate datele din el.va rog ajutati-ma ,nu am idee cum sa fac asta


Titlul: Răspuns: Fisiere
Scris de: Buleandra Cristian din Ianuarie 14, 2013, 02:09:29
buna!am si eu o problema trebuie sa fac un program care sa contina instructiuni de salt pentru un microprocesor pe 8 biti.ideea ar fi sa fac un fisier text care sa contina instructiunile si in c++ sa citesc fisierul si sa recunosc toate datele din el.va rog ajutati-ma ,nu am idee cum sa fac asta

Pai trebuie sa faci in C++ sau in assembly? Uite aici un tutorial pentru instructiuni de salt in assembly: http://frdsa.fri.uniza.sk/~janosik/Vyuka/Assembly_language_lecture6.pdf


Titlul: Răspuns: Fisiere
Scris de: Horvath Denise din Ianuarie 22, 2013, 19:17:04
buna! ajuta-ti-ma si pe mine va rog...nu cam imi plac fisierele si am ceva cu ce nu ma descurc.Trebuia sa citesc dintr-un fisier intrare.txt un nr natural n si sa determin inversul numarului n apoi sa afisez inversul intr-un fisier cu numele iesire.
ma poate ajuta cnv? am tot incercat da nu imi vine ideea:D


Titlul: Răspuns: Fisiere
Scris de: Simoiu Robert din Ianuarie 22, 2013, 19:36:14
Si ce nu stii ? In ce mediu lucrezi ?


Titlul: Răspuns: Fisiere
Scris de: Horvath Denise din Ianuarie 22, 2013, 19:40:05
c++ code blocks.mi-am intrebat si cativa colegi dar nici ei nu au facut si m-am gandit k poate primesc ajutor aici


Titlul: Răspuns: Fisiere
Scris de: Horvath Denise din Ianuarie 22, 2013, 19:41:10
am eu ceva idei cum sa fac dar nu stiu cum sa le aplic


Titlul: Răspuns: Fisiere
Scris de: Simoiu Robert din Ianuarie 22, 2013, 19:41:38
Daca esti in C++, inseamna ca lucrezi cu streamuri, nu cu cstdio (scanf, printf). Si in legatura cu inversul lui N, se refera la operatia matematica 1/N, care returneaza un numar real, nu despre altceva.


Titlul: Răspuns: Fisiere
Scris de: George Marcus din Ianuarie 22, 2013, 19:42:56
Cred ca aici invers se refera la numarul citit invers :)


Titlul: Răspuns: Fisiere
Scris de: Horvath Denise din Ianuarie 22, 2013, 19:44:36
cu inversul numarului nu am probleme ca e frt usor e si algoritm dar nu stiu cum sa citesc numarul din fisierul intrare care dja e creat si sa il copiez  in cel de-al doilea


Titlul: Răspuns: Fisiere
Scris de: Simoiu Robert din Ianuarie 22, 2013, 19:46:55
Daca folosesti streamuri, faci asa :
Cod:
# include <fstream>
using namespace std;

int N;
int main (void) {
    ifstream f("intrare.txt");
    ofstream g("intrare.txt");
    f >> N;
    g << (double) 1 / N; // trebuie convertit la double
}
Daca faci cealalta citire, faci asa :
Cod:
# include <cstdio>

int N;
int main (void) {
    freopen ("intrare.txt", "r", stdin);
    freopen ("intrare.txt, "w", stdout);
    scanf ("%d", &N);
    printf ("%lf", (double) 1 / N);
}


Titlul: Răspuns: Fisiere
Scris de: Horvath Denise din Ianuarie 22, 2013, 19:52:55
problema e ca noi nu lucram asa eu sunt in clasa a11a la intensiv info si problema mea e un program de la atestat
cerinta e asa:Se citeste dintr-un fisier intrare.txt un nr nat n.Sa se determine inversul numarului n si sa se afiseze acesta intr-un alt fisier cu numele iesite.txt.

eu cam asta am facut pana acum si aici m-am blocat:
#include<iostream>
#include<fstream>
using namespace std;
int main()
{
    char ch,nume[20],inv=0;
    cout<<"nume=";cin>>nume;
    fstream f1(nume,ios::in),f2(nume,ios::in);
    while(cin>>ch)
    f1<<ch;
    f1.close();
    while(f2<<ch)
    {
        while(ch!=0)
        inv=inv*10+ch%10;
        ch=ch%10;
    }
    cout<<ch;
    f2.close();
    return 0;
}


Titlul: Răspuns: Fisiere
Scris de: Sorin Rita din Ianuarie 22, 2013, 19:58:00
Tu stii deja din enunt cum se numesc fisierele : intrare.txt si iesire.txt. In bucata asta de cod ce faci ?
Cod:
  fstream f1(nume,ios::in),f2(nume,ios::in);
De ce afisezi pe ecran si nu tot in fisier ? Daca tot ai facut tu ceva si te-ai straduit incearca sa intelegi unde gresesti. Daca iti spunem noi nu inveti nimic.


Titlul: Răspuns: Fisiere
Scris de: Horvath Denise din Ianuarie 22, 2013, 19:59:21
poi am incercat da chestia e ca tot imi da eroare si profa ma decapiteaza daca maine ma prezint fara programul  asta


Titlul: Răspuns: Fisiere
Scris de: Sorin Rita din Ianuarie 22, 2013, 20:08:10
Vezi ca si inversul il faci prost. De fapt cam tot de pe acolo e prost.


Titlul: Răspuns: Fisiere
Scris de: Horvath Denise din Ianuarie 22, 2013, 20:13:48
aqma am vaz k am gresit cv l invers


Titlul: Răspuns: Fisiere
Scris de: Horvath Denise din Ianuarie 22, 2013, 20:15:13
tocmai de aia am cerut ajutor aici ca stiu ca nu am facut bn


Titlul: Răspuns: Fisiere
Scris de: Radu-Andrei Szasz din Ianuarie 22, 2013, 20:38:52
Cod:
#include <fstream>

using namespace std;

int main()
{
int N, invers = 0;
ifstream in("intrare.txt"); in>>N; in.close();
while(N)
{
invers = invers * 10 + N % 10;
N = N / 10;
}
ofstream out("iesire.txt"); out<<invers; out.close();
}


Titlul: Răspuns: Fisiere
Scris de: Simoiu Robert din Ianuarie 22, 2013, 21:23:54
Mda, formularea corecta era oglinditul numarului N, nu inversul, eu m-am gandit la altceva :P.


Titlul: Răspuns: Fisiere
Scris de: Andrei Grigorean din Ianuarie 26, 2013, 15:46:08
Pote k dak ai scrie bn tear ajuta lmea my des.