Jump to content

SUBIECTE NOI
« 1 / 5 »
RSS
Sfat achizitie sistem audio pentr...

tavan fals rigips

Ce preferați: produse mai scumpe ...

Demagnetizare (minimala) ori ba?
 Cum pot sa vad pe un proiector pr...

Joc Drone

Dropshipping

Sfat achizitie AC Gree Fairy vs P...
 MONITOR LG fara sonor !

Batalia pentru Bucuresti - ND, Fi...

Identificare font

problema ping in jocuri online
 Problema calculator

Samsung Galaxy A35

Sfat pentru aprinderea automata a...

Rfg crescut
 

Cum fac return la doua sau mai multe elemente ?

- - - - -
  • Please log in to reply
25 replies to this topic

#1
Krisler12

Krisler12

    Senior Member

  • Grup: Senior Members
  • Posts: 2,761
  • Înscris: 21.04.2009
Sa zicem ca am o functie care calculeaza media aritmetica si intoarce rezultatul, de exemplu:

int average ( int a, int B)
{
   rezultat=(a+b)/2;
   return rezultat;
}


Acum sa ziceam ca am o functie care citeste un fisier iar la final trebuie sa intoarca: numele fisierului, numaru de linii citite si tipul fisierului (.txt/.xlx etc.).
Cum fac ? Ca dupa modelul de mai sus nu merge sa scriu:

return nume_fisier numar_linii  tip_fisier;

Atunci cum trebuie facut ?

Multumesc !

#2
dani.user

dani.user

    Guru Member

  • Grup: Senior Members
  • Posts: 30,235
  • Înscris: 24.02.2007
O structura

#3
Krisler12

Krisler12

    Senior Member

  • Grup: Senior Members
  • Posts: 2,761
  • Înscris: 21.04.2009
Cum adica ?

#4
dani.user

dani.user

    Guru Member

  • Grup: Senior Members
  • Posts: 30,235
  • Înscris: 24.02.2007
Creeazi si returnezi o structura

#5
danzi23

danzi23

    Senior Member

  • Grup: Senior Members
  • Posts: 6,072
  • Înscris: 14.08.2013
@Krisler12
uite un exemplu
#include <iostream>
using namespace std;
struct qwerty
{
	string fileName, extension;
	int n;
};
qwerty func()
{
	qwerty Y;
	Y.fileName = "asdf";
	Y.extension = ".txt";
	Y.n = 10;
	return Y;
}
int main()
{
	qwerty X = func();
	cout << X.fileName;
	return 0;
}


Edited by danzi23, 19 April 2014 - 10:09.


#6
Krisler12

Krisler12

    Senior Member

  • Grup: Senior Members
  • Posts: 2,761
  • Înscris: 21.04.2009
Multumesc !

Ce smecherie, chiar nu stiamd e asa ceva. :D

#7
dani.user

dani.user

    Guru Member

  • Grup: Senior Members
  • Posts: 30,235
  • Înscris: 24.02.2007
Deci meritam si noi o parte din viitoare tale castiguri la loto :D

#8
Krisler12

Krisler12

    Senior Member

  • Grup: Senior Members
  • Posts: 2,761
  • Înscris: 21.04.2009

View Postdani.user, on 19 aprilie 2014 - 10:36, said:

Deci meritam si noi o parte din viitoare tale castiguri la loto Posted Image
Vezi ca ma crezi ? :D

#9
ccdsah

ccdsah

    Senior Member

  • Grup: Senior Members
  • Posts: 2,581
  • Înscris: 16.03.2013

View PostKrisler12, on 19 aprilie 2014 - 09:45, said:

Sa zicem ca am o functie care calculeaza media aritmetica si intoarce rezultatul, de exemplu:

int average ( int a, int B)
{
rezultat=(a+b)/2;
return rezultat;
}


Acum sa ziceam ca am o functie care citeste un fisier iar la final trebuie sa intoarca: numele fisierului, numaru de linii citite si tipul fisierului (.txt/.xlx etc.).
Cum fac ? Ca dupa modelul de mai sus nu merge sa scriu:

return nume_fisier numar_linii  tip_fisier;

Atunci cum trebuie facut ?

Multumesc !

Nu returnea media aritmetica ci doar catul impartirii sumei numerelor la 2. trebuie sa definesti functia astfel incat sa returneze un nr real si impartirea s-o faci la 2.0

La problema ta nu folosesti o functie ci o procedura

#10
Krisler12

Krisler12

    Senior Member

  • Grup: Senior Members
  • Posts: 2,761
  • Înscris: 21.04.2009

View Postccdsah, on 19 aprilie 2014 - 12:56, said:


Nu returnea media aritmetica ci doar catul impartirii sumei numerelor la 2. trebuie sa definesti functia astfel incat sa returneze un nr real si impartirea s-o faci la 2.0

La problema ta nu folosesti o functie ci o procedura

Cum adica ? Da un exemplu, te rog, ca nu stiu.

#11
ccdsah

ccdsah

    Senior Member

  • Grup: Senior Members
  • Posts: 2,581
  • Înscris: 16.03.2013

View PostKrisler12, on 20 aprilie 2014 - 09:37, said:

Cum adica ? Da un exemplu, te rog, ca nu stiu.

http://en.wikipedia....mputer_science)

#12
MarianG

MarianG

    be that as it may

  • Grup: Moderators
  • Posts: 31,435
  • Înscris: 10.08.2005

View Postccdsah, on 19 aprilie 2014 - 12:56, said:

La problema ta nu folosesti o functie ci o procedura

Quote

In different programming languages a subroutine may be called a procedure, a function, a routine, a method, or a subprogram. The generic term callable unit is sometimes used


#13
Dumitru_Pavel

Dumitru_Pavel

    Member

  • Grup: Members
  • Posts: 453
  • Înscris: 06.02.2014

View Postdani.user, on 19 aprilie 2014 - 09:45, said:

O structura

asta dacă ştii câte sunt şi de ce tip sunt dar problema se poate complica

#14
dani.user

dani.user

    Guru Member

  • Grup: Senior Members
  • Posts: 30,235
  • Înscris: 24.02.2007
Si structura se poate complica.

#15
paulicaFX

paulicaFX

    Member

  • Grup: Members
  • Posts: 792
  • Înscris: 08.08.2011
Sau prin parametrii de referinta
#include <iostream>
using namespace std;

void func(int &nr, string &tip, string &nume)
{
nr=10;
tip=".xml";
nume="fisier";

	 
}
int main()
{
int numarLinii;
string extensie,filename;
func(numarLinii,extensie,filename);
cout<<filename;

	 return 0;
}

Edited by paulicaFX, 20 April 2014 - 17:13.


#16
TS030

TS030

    Guru Member

  • Grup: Senior Members
  • Posts: 15,193
  • Înscris: 25.06.2012
N-as zice ca e o idee buna sa returnezi o structura - cel putin nu in acest caz. Daca datele de iesire pot fi logic grupate intr-o structura, atunci aceasta poate fi un parametru de iesire. Daca nu, parametri separati.
Totusi nu inteleg cum ajunge o functie care trebuie sa citeasca dintr-un fisier sa determine de capul ei numele si extensia fisierului... astea suna a parametri de intrare.

Krisler12, te-ai gandit sa pui mana pe si sa studiezi o carte de C++ pentru incepatori? Oricare dintre ele ar trebui sa trateze functiile si transmiterea parametrilor.

#17
Rhesus

Rhesus

    Senior Member

  • Grup: Senior Members
  • Posts: 2,882
  • Înscris: 22.04.2014

View PostMarianG, on 20 aprilie 2014 - 13:24, said:

Cu toate că terminologia este aproape identică (subrutina, rutina, metoda, functie, procedura, subprogram), se folosește funcție pentru acel unit care returneaza ceva (inca din Pascal, functia obligatoriu returneaza ceva), pe cand o procedura nu trebuie sa returneze(void din C). Subprogram si subrutină sunt denumiri umpic mai generale pentru functii si proceduri.

Aș vrea sa văd și părerile voastre legate de acest aspect Posted Image Cum spuneți/Ce denumiri preferați

Edited by Rhesus, 28 April 2014 - 20:39.


#18
MarianG

MarianG

    be that as it may

  • Grup: Moderators
  • Posts: 31,435
  • Înscris: 10.08.2005

View PostRhesus, on 28 aprilie 2014 - 20:38, said:

Cu toate că terminologia este aproape identică (subrutina, rutina, metoda, functie, procedura, subprogram), se folosește funcție pentru acel unit care returneaza ceva (inca din Pascal, functia obligatoriu returneaza ceva), pe cand o procedura nu trebuie sa returneze(void din C). Subprogram si subrutină sunt denumiri umpic mai generale pentru functii si proceduri.
main e functie sau procedura?

Edited by MarianG, 28 April 2014 - 20:46.


Anunturi

Second Opinion Second Opinion

Folosind serviciul second opinion ne puteți trimite RMN-uri, CT -uri, angiografii, fișiere .pdf, documente medicale.

Astfel vă vom putea da o opinie neurochirurgicală, fără ca aceasta să poată înlocui un consult de specialitate. Răspunsurile vor fi date prin e-mail în cel mai scurt timp posibil (de obicei în mai putin de 24 de ore, dar nu mai mult de 48 de ore). Second opinion – Neurohope este un serviciu gratuit.

www.neurohope.ro

0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

Forumul Softpedia foloseste "cookies" pentru a imbunatati experienta utilizatorilor Accept
Pentru detalii si optiuni legate de cookies si datele personale, consultati Politica de utilizare cookies si Politica de confidentialitate