Jump to content

SUBIECTE NOI
« 1 / 5 »
RSS
Cum accesez site-ul CNAS ?

Algoritm simplu de calculare al u...

Bitdefender Total Security ș...

casa verde 2024
 Intrerupator cu N - doza doar cu ...

Incalzire casa fara gaz/lemne

Incalzire in pardoseala etapizata

Suprataxa card energie?!
 Cum era nivelul de trai cam din a...

probleme cu ochelarii

Impozite pe proprietati de anul v...

teava rezistenta panou apa calda
 Acces in Curte din Drum National

Sub mobila de bucatarie si sub fr...

Rezultat RMN

Numar circuite IPAT si prindere t...
 

Adm UBB 2014 S I c)

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

#1
VladBtz

VladBtz

    Active Member

  • Grup: Members
  • Posts: 1,702
  • Înscris: 24.09.2014
http://www.cs.ubbclu...ubb-ro-2014.pdf


Pentru c2) ma gandeam la o rezolvare cu if si else, sau putin mai elegant cu switch. Aveti alte idei ?

long long c2(long n)
{
long long c, rez ;
if (n>10 && n<100 ) c=10;
else if (n>100 && n<1000 ) c=100;
else if (n>1000 && n<10000 ) c=1000;
else if ( n>10000 && n<100000) c=10000;
else if (n>100000 && n<1000000 ) c=100000;
\\ si tot asa pana la 100 milioane
else return n; \\ adica are doar o cifra
rez = n%c;
rez *= 10;
n = n/c;
rez +=n;
return n;
}



Edited by VladBtz, 01 July 2016 - 12:10.


#2
ionutzm05

ionutzm05

    Member

  • Grup: Members
  • Posts: 902
  • Înscris: 23.06.2009
Nu asta e rezolvarea la care se asteapta profesorii :). Porneste de la asta si aflii rapid rezolvarea: numarul de cifre a unui numar natural = parte intreaga din logaritm in baza 10 din numar + 1.

#3
sftpdt

sftpdt

    Senior Member

  • Grup: Senior Members
  • Posts: 3,650
  • Înscris: 29.08.2013

View Postionutzm05, on 01 iulie 2016 - 12:14, said:

Porneste de la asta si aflii rapid rezolvarea: numarul de cifre a unui numar natural = parte intreaga din logaritm in baza 10 din numar + 1.

La sub1 acolo nu ţi se dă voie cu nicio bibliotecă (da, nici cmath).

#4
VladBtz

VladBtz

    Active Member

  • Grup: Members
  • Posts: 1,702
  • Înscris: 24.09.2014

View Postionutzm05, on 01 iulie 2016 - 12:14, said:

Nu asta e rezolvarea la care se asteapta profesorii Posted Image. Porneste de la asta si aflii rapid rezolvarea: numarul de cifre a unui numar natural = parte intreaga din logaritm in baza 10 din numar + 1.

nu am voie sa deschid cmath si sa folosesc  log10() ; si  floor();

in loc de floor as putea folosi %1 , dar in loc de log10 ?

Edited by VladBtz, 01 July 2016 - 12:23.


#5
danzi23

danzi23

    Senior Member

  • Grup: Senior Members
  • Posts: 6,072
  • Înscris: 14.08.2013
Pare ok. Sau te poti folosi de functile log10 si pow

#include <cmath>
#include <iostream>
using namespace std;
unsigned long int c2(unsigned long int x) {
int d = pow(10, int(log10(x)));
int prima_cifra = x/d;
int restul_numarului = x%d;
return restul_numarului * 10 + prima_cifra;
}


// edit: scuze, acum am vazut ca nu ai voie cu cmath

Edited by danzi23, 01 July 2016 - 12:28.


#6
VladBtz

VladBtz

    Active Member

  • Grup: Members
  • Posts: 1,702
  • Înscris: 24.09.2014

View Postsftpdt, on 01 iulie 2016 - 12:19, said:

La sub1 acolo nu ţi se dă voie cu nicio bibliotecă (da, nici cmath).

atunci cum am facut eu e bine ?

Edited by VladBtz, 01 July 2016 - 12:32.


#7
danzi23

danzi23

    Senior Member

  • Grup: Senior Members
  • Posts: 6,072
  • Înscris: 14.08.2013
eu zic sa folosesti "unsigned long int" in loc de "long long"

#8
gyan338

gyan338

    Junior Member

  • Grup: Members
  • Posts: 114
  • Înscris: 05.09.2011
VladBtz, fii atent la urmatoarele aspecte pe rezolvarea ta:
1) ce se intampla cand n este 10, 100, 1000 etc.
2) ce returneaza functia

#9
ionutzm05

ionutzm05

    Member

  • Grup: Members
  • Posts: 902
  • Înscris: 23.06.2009

View Postsftpdt, on 01 iulie 2016 - 12:19, said:


La sub1 acolo nu ţi se dă voie cu nicio bibliotecă (da, nici cmath).
Imposibil. Profesorii facultatii, la cursurile de pregatire pentru admitere au spus ca rezolvarea acestei probleme, care de altfel apare destul de des printre subiecte sub diferite forme in care ai nevoie de numarul de cifre al unui numar, se rezolva cu logaritm in baza 10 + 1. Va garantez ca asta este modalitatea prin care obtii punctaj maxim la acel subpunct.

Pana la urma subiectul nu este legat de ce biblioteca folosesti ci mai degraba de modul de gandire al rezolvarii.

#10
sftpdt

sftpdt

    Senior Member

  • Grup: Senior Members
  • Posts: 3,650
  • Înscris: 29.08.2013

View Postionutzm05, on 01 iulie 2016 - 15:49, said:

Imposibil. Profesorii facultatii, la cursurile de pregatire pentru admitere au spus ca rezolvarea acestei probleme, care de altfel apare destul de des printre subiecte sub diferite forme in care ai nevoie de numarul de cifre al unui numar, se rezolva cu logaritm in baza 10 + 1. Va garantez ca asta este modalitatea prin care obtii punctaj maxim la acel subpunct.

Eu am dat testul acela în 2015 şi au venit în sală cele care au făcut subiectul pentru eventualele clarificări, şi au zis clar că nu avem voie cu funcţia pow sau altele predefinite (cmath).

Probabil în 2014 se acceptau, nu ştiu.

Edited by sftpdt, 01 July 2016 - 15:56.


#11
MarianG

MarianG

    be that as it may

  • Grup: Moderators
  • Posts: 31,383
  • Înscris: 10.08.2005
Care sunt structurile repetitive ?
Ai voie sa simulezi o asemenea structura ?

Edited by MarianG, 01 July 2016 - 17:27.


#12
VladBtz

VladBtz

    Active Member

  • Grup: Members
  • Posts: 1,702
  • Înscris: 24.09.2014

View PostMarianG, on 01 iulie 2016 - 17:21, said:

Care sunt structurile repetitive ?
Ai voie sa simulezi o asemenea structura ?

for si while presupun ? cum sa simulez ?

#13
MarianG

MarianG

    be that as it may

  • Grup: Moderators
  • Posts: 31,383
  • Înscris: 10.08.2005
start:
if (contor < 9)
{
  contor++;
  goto start;
}


#14
dani.user

dani.user

    Guru Member

  • Grup: Senior Members
  • Posts: 30,197
  • Înscris: 24.02.2007

View PostVladBtz, on 01 iulie 2016 - 12:01, said:

Pentru c2) ma gandeam la o rezolvare cu if si else, sau putin mai elegant cu switch. Aveti alte idei ?

E totusi admiterea pentru o facultate de profil. Zeci de randuri de if/else/case scrie si un elev de a 5-a ce acum vede cum e sa scrii cod.

Anunturi

Neurochirurgie minim invazivă Neurochirurgie minim invazivă

"Primum non nocere" este ideea ce a deschis drumul medicinei spre minim invaziv.

Avansul tehnologic extraordinar din ultimele decenii a permis dezvoltarea tuturor domeniilor medicinei. Microscopul operator, neuronavigația, tehnicile anestezice avansate permit intervenții chirurgicale tot mai precise, tot mai sigure. Neurochirurgia minim invazivă, sau prin "gaura cheii", oferă pacienților posibilitatea de a se opera cu riscuri minime, fie ele neurologice, infecțioase, medicale sau estetice.

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