Loto campion.edu.ro

Ca si orice alta activitate, programarea depinde mult de factorul uman. Hai sa vedem ce ne face pe noi sa butonam.

Loto campion.edu.ro

Postby eric56 » 09 Jan 2012, 20:44

Hei salutare , pentru ca am terminat fisierul bacmatrici mai am cateva probleme de dificultate marita (ma descurc la majoritatea) , dar nu stiu cum sa determin un numar cat mai apropiat de altul :-??

EX: 14
SI SIRUL (N=5): 1 2 3 1002 12

SE AFISEAZA 12
PROBLEMA COMPLETA O GASITI PE SITE-UL
http://campion.edu.ro/arhiva/index.php?page=problem&action=view&id=1010
0,0p / 0 votes
Respecta si vei fi respectat
User avatar
eric56
Bit
 
Joined: 19 Dec 2011
Status: 0

Re: Loto campion.edu.ro

Postby eni4ever » 09 Jan 2012, 21:33

Începem clasic : cum te-ai gândit să o apuci ?
0,0p / 0 votes
Image

"Rațiunea vine în umbre scurte numite suferințe." Victor Adăscăliței
"Bender: Anything less than immortality is a complete waste of time.
Zoidberg: Then suicide it is! Step into my office ..." Futurama S06E06
User avatar
eni4ever
DWord
 
Joined: 03 Jan 2010
Location: Timișoara
Status: 57.83

Re: Loto campion.edu.ro

Postby eric56 » 09 Jan 2012, 21:45

sa determin maximul si minimul din cele 6 bile casstigatoare, apoi verific cu o parcurgere de for care este cel mai aproapiat , problema e ca trebuie sa tin cont de numerele mai mici ca minimul, si mai mari ca acesta, anallog pentru maxim.
0,0p / 0 votes
Respecta si vei fi respectat
User avatar
eric56
Bit
 
Joined: 19 Dec 2011
Status: 0

Re: Loto campion.edu.ro

Postby eni4ever » 09 Jan 2012, 22:21

Nu prea este util să știi maximul și minimul în acest context, pentru că valoarea căutată va fi, de cele mai multe ori, ndeva între cele 2 extreme și astfel nu rezolvi nimic.

Eu sugerez în felul următor : ca să aflii cel mai apropiat număr de un număr dat, trebuie ca diferența luată fără semn dintre rezultat și numărul tău inițial să fie minimă.
Cu alte cuvinte, pe exemplul tău, 12 este mai aproape de 14 decât restul numerelor pentru că |12-14| = 2 (unde am notat cu |-a| = a pentru orice a = număr întreg : pozitiv sau negativ).
Ceea ce este adevărat pentru că :
|1-14| = 13
|2-14| = 12
|3-14| = 11
|1002-14| = <mult, de ordinul sutelor>
ori, întradevăr, 2 este cel mai mic număr dintre toate celelalte rezultate deci 12 este cel mai apropiat număr de cel inițial.
Pe baza acestor observații, se poate construi ușor o soluție la problema ta.

Indiciu : folosește funcția abs(trebuie să incluzi stdlib.h) pentru a obține același rezultat ca și |-a|. Apropo, "| |" reprezintă modulul matematic, lucru bine de știut pentru viitor ;).
Ex : abs(12-14) va returna 2.
0,0p / 0 votes
Image

"Rațiunea vine în umbre scurte numite suferințe." Victor Adăscăliței
"Bender: Anything less than immortality is a complete waste of time.
Zoidberg: Then suicide it is! Step into my office ..." Futurama S06E06
User avatar
eni4ever
DWord
 
Joined: 03 Jan 2010
Location: Timișoara
Status: 57.83

Re: Loto campion.edu.ro

Postby eric56 » 09 Jan 2012, 22:30

Nu stiu ce inseamna stdlib (nu am invatat biblioteca asta) , am inteles ce inseamna abs
0,0p / 0 votes
Respecta si vei fi respectat
User avatar
eric56
Bit
 
Joined: 19 Dec 2011
Status: 0

Re: Loto campion.edu.ro

Postby eni4ever » 09 Jan 2012, 22:43

Deocamdată e în regulă și dacă nu știi. Ceea ce trebuie să știi însă este că pentru a folosi funcția abs, trebuie să ai și #include <stdlib.h> lângă #include <stdio.h>.
0,0p / 0 votes
Image

"Rațiunea vine în umbre scurte numite suferințe." Victor Adăscăliței
"Bender: Anything less than immortality is a complete waste of time.
Zoidberg: Then suicide it is! Step into my office ..." Futurama S06E06
User avatar
eni4ever
DWord
 
Joined: 03 Jan 2010
Location: Timișoara
Status: 57.83

Re: Loto campion.edu.ro

Postby eric56 » 09 Jan 2012, 22:45

-- 09 Jan 2012, 21:45 --

bine...
si daca folosesc abs inseamna ca numarul cautat va minimul dintre cele returnate ?????????
0,0p / 0 votes
Last edited by eric56 on 09 Jan 2012, 23:57, edited 1 time in total.
Respecta si vei fi respectat
User avatar
eric56
Bit
 
Joined: 19 Dec 2011
Status: 0

Re: Loto campion.edu.ro

Postby eni4ever » 09 Jan 2012, 22:51

Dacă urmărești, înțelegi și aplici explicațiile mele, eu zic că da, desigur!
0,0p / 0 votes
Image

"Rațiunea vine în umbre scurte numite suferințe." Victor Adăscăliței
"Bender: Anything less than immortality is a complete waste of time.
Zoidberg: Then suicide it is! Step into my office ..." Futurama S06E06
User avatar
eni4ever
DWord
 
Joined: 03 Jan 2010
Location: Timișoara
Status: 57.83

Re: Loto campion.edu.ro

Postby eric56 » 09 Jan 2012, 23:58

Functia abs se scrie :

abs(min-v[i]) ???
sau altcumva (in C++)
0,0p / 0 votes
Respecta si vei fi respectat
User avatar
eric56
Bit
 
Joined: 19 Dec 2011
Status: 0

Re: Loto campion.edu.ro

Postby eni4ever » 10 Jan 2012, 00:00

Dacă compileză, atunci da ... așa se scrie. Dacă nu compilează, atunci să vedem codul.
0,0p / 0 votes
Image

"Rațiunea vine în umbre scurte numite suferințe." Victor Adăscăliței
"Bender: Anything less than immortality is a complete waste of time.
Zoidberg: Then suicide it is! Step into my office ..." Futurama S06E06
User avatar
eni4ever
DWord
 
Joined: 03 Jan 2010
Location: Timișoara
Status: 57.83

Re: Loto campion.edu.ro

Postby DarkByte » 10 Jan 2012, 00:03

On the other hand, iti poti scrie tu o functie abs ...

  1. int my_abs(int value)
  2. {
  3.   if value < 0
  4.     return -value;
  5.     else return value;
  6. }
0,0p / 0 votes
User avatar
DarkByte
11011011
 
Joined: 29 Dec 2009
Status: 140

Re: Loto campion.edu.ro

Postby eric56 » 10 Jan 2012, 00:12

(Inca nu am terminat programul)


!
Cum verific cel mai mic numar returnat???


P.S Pun si punct si virgula dupa functie?
0,0p / 0 votes
Respecta si vei fi respectat
User avatar
eric56
Bit
 
Joined: 19 Dec 2011
Status: 0

Re: Loto campion.edu.ro

Postby eni4ever » 10 Jan 2012, 00:21

Eric, dacă nu cunoaștem apelul de funcții atunci avem o mică problemă. De ce nu faci probleme mai accesibile ție și învățăm pe parcurs ? Alege-le pe cele cu care te simți tu stăpân pe situație că le poți rezolva.
0,0p / 0 votes
Image

"Rațiunea vine în umbre scurte numite suferințe." Victor Adăscăliței
"Bender: Anything less than immortality is a complete waste of time.
Zoidberg: Then suicide it is! Step into my office ..." Futurama S06E06
User avatar
eni4ever
DWord
 
Joined: 03 Jan 2010
Location: Timișoara
Status: 57.83

Re: Loto campion.edu.ro

Postby eric56 » 10 Jan 2012, 00:49

Asa am sa fac :D
0,0p / 0 votes
Respecta si vei fi respectat
User avatar
eric56
Bit
 
Joined: 19 Dec 2011
Status: 0


Return to Discutii despre programare

Who is online

Users browsing this forum: No registered users and 0 guests

cron