sNNk3r Posted January 21, 2019 Report Posted January 21, 2019 Buna ziua, am 2 probleme de rezolvat. Una pe baza de recursivitate si alta pentru structuri de date pentru facultate si nu reusesc. Daca m-ati putea ajuta sau daca mi-ati putea oferi sfaturi pentru rezolvarea acestora as fi recunoscator. RECURSIVITATE: 1. Scrieti un algoritm recursiv care afiseaza un cuvant dat in ordine inversa. 2. Scrieti o functie recursiva pentru calculul lui n!. 3. Calculati recursiv cmmdc(a,b). 4. Determinati al n-lea termen din sirul lui Fibinacci. 5. Calculul functiei recursive Aackerman definita prin relatiile: Ack(m,n)= n+1 , daca m=0 Ack(m-1,1) ,daca m>0 si n=0 Ack(m-1, ack(m,n-1)) daca n>0, m>0 STRUCTURI DE DATE: 1. Se da structura Data calendaristica. Functie care compara doua date calendaristice. 2. Se dau numele, nota, nrdiscipline cu media 10. Daca se dau n studenti, sa se determine primii k studenti in ordine descrescatoare dupa note, in caza de egalitate, descrescatoare dupa numarul notelor de 10. 3. Scrieti intr-un fisier toate articolele introduse de la tastatura, cu structura den, pret, cant, unit_mas, prettotal=pret*cant , TVA=prettotal*1.19. Sunt pentru recuperarea la facultate a 2 laboratoare. Sigur dumneavoastra stiti mai bine C++ si timpul este limita sa ma documentez sa invat acuma deoarece trebue sa recuprez laboratoarele sa pot intra in sesiune.. Am incercat si am facut problemele discutate si oferite la clasa pe aceste teme si am sa le las mai jos.. Va multumesc mult! https://www.mediafire.com/file/fhj7do22kxgd3x3/Fundamentele+programarii.rar 1 Quote
aurelL Posted January 21, 2019 Report Posted January 21, 2019 Nu cred ca-ti face nimeni tema, dar te poti uita peste asta: si asta: Ai explicatiile la vreo 4 probleme de-ale tale. Daca am inteles eu, intelege oricine. 1 Quote
Active Members MrGrj Posted January 21, 2019 Active Members Report Posted January 21, 2019 Toate la un gugal distanta: 1. Reverse string: #include <iostream> void reverseStringInPlace(std::string &stringToReverse) { int numCharacters = stringToReverse.length(); for (int i=0; i<numCharacters/2; i++) { std::swap(stringToReverse[i], stringToReverse[numCharacters-i-1]); } } int main() { std::string stringToReverse = "reversing a string"; std::cout << stringToReverse << std::endl; reverseStringInPlace(stringToReverse); std::cout << stringToReverse << std::endl; return 0; } 2. Factorial (recursive) int factorialfinder(int x) { if (x == 1) // HERE 5 is not equal to 1 so goes to else { return 1; }else { return x*factorialfinder(x-1); // returns 5*4*3*2*1 when x==1 it returns 1 } } 3. GCD (recursive) #include <iostream> using namespace std; int hcf(int n1, int n2); int main() { int n1, n2; cout << "Enter two positive integers: "; cin >> n1 >> n2; cout << "H.C.F of " << n1 << " & " << n2 << " is: " << hcf(n1, n2); return 0; } int hcf(int n1, int n2) { if (n2 != 0) return hcf(n2, n1 % n2); else return n1; } 4. n-th Fibo number #include<stdio.h> int fib(int n) { int f[n+1]; int i; f[0] = 0; f[1] = 1; for (i = 2; i <= n; i++) { f[i] = f[i-1] + f[i-2]; } return f[n]; } int main () { int n = 9; printf("%d", fib(n)); getchar(); return 0; } 5. Ackerman (recursive) #include <stdio.h> int ack(int m, int n) { if (m == 0) return n+1; if (n == 0) return ack( m - 1, 1 ); return ack( m - 1, ack( m, n - 1 ) ); } int main() { for (int i = 0; i < 6; ++i) for (int j = 0; j < 6; ++j) printf("ack(%d,%d) = %d\n", i, j, ack(i,j)); return 0; } La alea cu structuri de date mi-e lene sa caut, da' pula mea, mai fa si tu ceva. 1 3 Quote
sNNk3r Posted January 21, 2019 Author Report Posted January 21, 2019 3 hours ago, MrGrj said: Toate la un gugal distanta: 1. Reverse string: #include <iostream> void reverseStringInPlace(std::string &stringToReverse) { int numCharacters = stringToReverse.length(); for (int i=0; i<numCharacters/2; i++) { std::swap(stringToReverse[i], stringToReverse[numCharacters-i-1]); } } int main() { std::string stringToReverse = "reversing a string"; std::cout << stringToReverse << std::endl; reverseStringInPlace(stringToReverse); std::cout << stringToReverse << std::endl; return 0; } 2. Factorial (recursive) int factorialfinder(int x) { if (x == 1) // HERE 5 is not equal to 1 so goes to else { return 1; }else { return x*factorialfinder(x-1); // returns 5*4*3*2*1 when x==1 it returns 1 } } 3. GCD (recursive) #include <iostream> using namespace std; int hcf(int n1, int n2); int main() { int n1, n2; cout << "Enter two positive integers: "; cin >> n1 >> n2; cout << "H.C.F of " << n1 << " & " << n2 << " is: " << hcf(n1, n2); return 0; } int hcf(int n1, int n2) { if (n2 != 0) return hcf(n2, n1 % n2); else return n1; } 4. n-th Fibo number #include<stdio.h> int fib(int n) { int f[n+1]; int i; f[0] = 0; f[1] = 1; for (i = 2; i <= n; i++) { f[i] = f[i-1] + f[i-2]; } return f[n]; } int main () { int n = 9; printf("%d", fib(n)); getchar(); return 0; } 5. Ackerman (recursive) #include <stdio.h> int ack(int m, int n) { if (m == 0) return n+1; if (n == 0) return ack( m - 1, 1 ); return ack( m - 1, ack( m, n - 1 ) ); } int main() { for (int i = 0; i < 6; ++i) for (int j = 0; j < 6; ++j) printf("ack(%d,%d) = %d\n", i, j, ack(i,j)); return 0; } La alea cu structuri de date mi-e lene sa caut, da' pula mea, mai fa si tu ceva. Iti multumesc nespus de mult, ideea ca si eu am gasit pe net dar doar primele 2 probleme mi-au rulat corect.. ultimele 2 nu se compileaza nu am reusit sa-i dau de cap. La structuri de date am gasit doar una posibil sa le gasesc pe toate daca stiu cum sa caut Iti multumesc nespus de mult. Cele 2 imi ruleaza minunat, ultimele 2 naiba le stie ce erori imi dau de nu se compileaza.. Sincer daca le gaseam pe net nu va mai ceream si ajutorul dvs, posibil sa nu fi cautata bine mai ales cum sunt foarte stresat cu sesiunea si ca nu rezolv problemele sa recuperez laboratoarele sa pot intra in examen si la aceasta materia Sper sa ma ajutati va multumesc mult pentru ajutorul acordat pana in momentul de fata. Aceasta eroare o primesca la problema 4:https://imgur.com/ydQe0Ky Quote
ARUBA Posted January 22, 2019 Report Posted January 22, 2019 (edited) stray - ai caractere invalide, ai dat copy-paste ca nestapanitu'. Cand dai copy-paste se pastreaza encoding-ul. Te duci frumos la linia respectiva si o rescrii de mana, asta daca nu esti prea stresat bineinteles. Lucrezi, ai probleme de sanatate? Nu inteleg de unde atat stres. http://www.runceanu.ro/adrian/wp-content/cursuri/poo2013/lab 1 - POO (2013).pdf https://programmersheaven.com/ - traduci in engleza Edited January 22, 2019 by ARUBA Quote
sNNk3r Posted January 22, 2019 Author Report Posted January 22, 2019 1 hour ago, ARUBA said: stray - ai caractere invalide, ai dat copy-paste ca nestapanitu'. Cand dai copy-paste se pastreaza encoding-ul. Te duci frumos la linia respectiva si o rescrii de mana, asta daca nu esti prea stresat bineinteles. Lucrezi, ai probleme de sanatate? Nu inteleg de unde atat stres. http://www.runceanu.ro/adrian/wp-content/cursuri/poo2013/lab 1 - POO (2013).pdf https://programmersheaven.com/ - traduci in engleza Desigur, din cauza sesiunii in care am intrat fiind anul I sper sa ma intelegeti multumesc frumos Quote