nedo
Active Members-
Posts
2065 -
Joined
-
Last visited
-
Days Won
11
Everything posted by nedo
-
Pai relativ simplu. Intr-un int salvezi numarul de cuvinte ce trebuie introduse(n-ul) Creezi un vector de string-uri(pentru a intera mai usor prin ele). faci o functie care preia ca si parametri , prin referinta, 2 vectori de stringuri, primul vector este vectorul cu cele n cuvinte iar al 2-lea este un vector gol. Faci un loop de la al 2-lea la ultimul cuvant si vezi daca cautarea primului cuvant in celelalte cuvinte returneaza = 0(adica prima pozitie). Daca returneaza prima pozitie atunci incrementezi un contor si adaugi cuvantul respectiv in cel de-al 2-lea vector. La sfarsit returnezi numarul de cuvinte gasite. Printezi pe ecran rezultatul functiei si poti printa si cele 3 cuvinte.
-
nu e give away pentru joc, ci doar pentru beta
-
pentru cei care au nevoie de denumirile mai "umane", aveti fisierul atasat mai jos. Nu am timp sa stau sa vad unde e buba din pacate. Din ce am testat eu, la orice introduc printeaza #|#. // project 2 #include <iostream> #include <cstring> using namespace std; int main() { char strng[50] = " "; // input string s char operands[30] = " "; // operands c char operators[30] = " "; // operators p int i, j, m; // iterators int length_of_strng; // lenght of s int len_of_operands = 0; // lenght of operands l int len_of_operators = 2; // lenght of operators k int prioriti[50]; // priority array int tp[30]; // operator's priorities int bracket_weigth = 0; // bracket weight g int len_of_tp = 0; // lenght of tp h // priorities prioriti['#'] = 0; prioriti['+'] = 1; prioriti['-'] = 1; prioriti['*'] = 2; prioriti['/'] = 2; prioriti['^'] = 3; tp[0] = 0; // priority for # cout << "expression: "; cin >> strng; cout << endl; length_of_strng = strlen(strng); // find the lenght of s strng[length_of_strng++] = '#'; // add # manually at the end of s strng[length_of_strng] = '\0'; operators[0] = '|'; operators[1] = '#'; // add # manually at the beginning of o for (i = 0; i < length_of_strng; i++) { if (strng[i] >= 'a' && strng[i] <= 'z') // if operand { if (operands[len_of_operands-1] == '(') // bracket was present just before { for (m = 1; operands[len_of_operands-m] == '('; m++) ; operands[len_of_operands - m + 1] = '|'; for (j = 0; j < m - 2; j++) operands[len_of_operands - j] = '('; if (m == 2) operands[len_of_operands] = '('; len_of_operands++; operands[len_of_operands++] = strng[i]; // add it to c } else { operands[len_of_operands++] = '|'; operands[len_of_operands++] = strng[i]; // add it to c } } else if (strng[i] == '(') // if left bracket { bracket_weigth = bracket_weigth + 10; // increase weight operands[len_of_operands++] = '('; } else if (strng[i] == ')') // if right bracket { bracket_weigth = bracket_weigth - 10; // decrease weight operands[len_of_operands++] = ')'; } else if (strng[i] == '+' || strng[i] == '-' || strng[i] == '*' || strng[i] == '^' || strng[i] == '/' || strng[i] == '#') { // if operator tp[++len_of_tp] = prioriti[strng[i]] + bracket_weigth; // add the operator's weight in tp operators[len_of_operators++] = '|'; operators[len_of_operators++] = strng[i]; // add it to o for (m = 1; m < len_of_operators; m++) // print o cout << operators[m]; cout << "\t\t"; for (m = 1; m < len_of_operands; m++) // print c cout << operands[m]; cout << endl << endl; while (tp[len_of_tp] <= tp[len_of_tp-1]) // compare the priority of the operators { if (operators[1] == '#' && operators[3] == '#') break; // end case for (j = len_of_operands - 1; operands[j] != '|'; j--) ; // find the first | going back operands[j] = operators[len_of_operators - 3]; // replace | with the old (popped) operator operators[len_of_operators - 3] = strng[i]; // replace the old operator with the new one len_of_operators = len_of_operators - 2; for (m = 1; m < len_of_operators; m++) // print o cout << operators[m]; cout << "\t\t"; for (m = 1; m < len_of_operands; m++) // print c cout << operands[m]; cout << endl << endl; tp[len_of_tp-1] = tp[len_of_tp]; // since we popped an operator, remove it len_of_tp--; } } } return 0; }
-
119, am mai scazut ... aveam 124 (la un test cu 50 de intrebari de mai multe feluri).
-
Programator: + Castiga bine + e un domeniu interesant in care nu prea ai timp sa te plictisesti + mereu inveti cate ceva + iti poti face propriile aplicatii(dupa ce ajungi la un anumit nivel) + daca te pricepi poti sa iti faci propria afacere + poti oricand sa lucrezi ca freelancer(sunt destule site-uri unde poti sa iti gasesti proiecte pe care sa le faci) - iti ia o mare parte din timp - poate devenii obositor - trebuie sa inveti constant pentru a ramane competitiv - poti sa ajungi sa faci mereu acelasi lucru -> plictiseala - poate devenii frustrant - mai ales partea de debug - e greu sa lucrezi pe codul altcuiva(daca ai ghinion si e scris cu picioarele) interesant * ar fii interesant sa poti sa inovezi in domeniul acesta * ar fii interesant sa iti vina o idee pe care nimeni nu a mai avut-o si sa o implementezi * ar fii interesant sa lucrezi la un soft foarte mare si utilizat de multi oameni Incearca sa faci ce am facut eu mai sus si pentru dj. Si atunci poti sa hotarasti.
-
In sfarsit, bine ai revenit, dupa cum spunea si StikyWox, macar o veste buna pe ziua de azi.
-
Bravo autorului. Nu e chiar asa de simplu sa faci unrezumat semnificativ unui text. Da, oricine poate sa faca substr pe cateva paragrafe, si sa se ia dupa headere, dar nu o sa iti ofere o infirmatie semnificativa. De asemena aplicatia nu are rolul sa te ajute ca "citesti" ceva anume doar prin rezumat, ci doar sa iti dea o idee cat mai buna asupra articolelor care chiar iti vor fi de folos. La asta se refera de fapt aplicatia asta, nu la un rezumat simplu. Felicitar inca o data autorului.
-
pentru ce vrei, si cum vrei tu sa faci, o solutie ar fii urmatoarea, dar e valabila doar atat timp cat marimea liniei nu se schimba, adica daca pe linie ai 5 caractere, tu le inlocuiesti pe toate 5, sau o parte din ele, dar la final tot 5 caractere sa ai. solutia mea ar fi sa folosesti membrii tellg,seekg, tellp,seekp din fstream.Creezi un feector care sa tina locatia inceputului fiecarei linii, eventual poti sa salvezi undeva si lungimea liniei. Iar cand vrei sa modifici o linie te folosesti de asta. Tine cont ca fisierul trebuie deschis in mod binar ca aceste functii sa functioneze corect. Mai multe informatii aici
-
Eu asi alege a 2-a versiune. Verificarea o faci dupa dimensiunea alocata. E mai putin overhead cu trimiterea parametrilor.
-
Iti lipseste o librarie. Nu cred ca ai versiunea necesara de .net, presupunand ca in .net e scrisa.
-
Nu se mai tin, deoarece nu are cine sa le tina, majoritatea celor care au cunostiintele necesare pentru a preda cursurile respective nu au timpul necesar pentru asta, si pentru ca nu s-a aratat mare interes pentru ele. Au fost dati in care au fost doar cativa participanti la cursuri.
-
Iata si o implementare c++ pura #include <iostream> #include <string> #include <fstream> using namespace std; int main() { ifstream fIn; string cuvant = "asdf"; // cuvantul tau int counter = 0; fIn.open("ex3.txt"); if(fIn.is_open()) { while(fIn.good()) { string temp; getline(fIn, temp); int pos = 0; pos = temp.find(cuvant, pos); while(pos != string::npos) { counter++; pos = temp.find(cuvant, (pos + cuvant.size())); } } } else { cout << "Eroare la deschidere fisier.\n"; } cout << cuvant << " apare de " << counter << " ori.\n"; return 0; }
-
Eu personal cred ca exista o entitate mai mare, ma gandesc ca totul a trebui sa fie creat de cineva/ceva. Pot sa ii zic Dumnezeu pentru ca pe mine personal m-a pazit de multe ori. Totusi sa ne gandim si altfel. Dupa cum spunea cineva mai sus, totul este haos. Daca totul se reduce la haos, atunci cum explicati spre exemplu "cel mai norocos om din lume" care a avut parte de un numar de accidente care ar fi trebuit sa il omoare, dupa care a castigat marele premiu la Loto. Poate Dumnezeul este energia colectiva a fiintelor constiente din univers. Ganditi-va la experimentul cu generatoarele de numere aleatoare si fenomenele globale.
-
E chiar atat de bun pe cat zic ei ?
-
Poate doar tu nytro, begood si inca vreo cativa, ca restul nu cred ca au sanse acolo. Eu sigur nu am. Si probabil nici nu o sa am inca vreo 5 ani de acum inainte.
-
Cum funcționează un centru pentru testarea antivirușilor
nedo replied to Nytro's topic in Stiri securitate
eu am renuntat la bd dupa ce mi-a ingreunat in ultimul hal calculatorul. Totusi nu am o configuratie slaba, dar ajunsesem sa stau si 10 -15 secunde sa imi deschida chrome, care ci avira + zone alarm se deschidea in 1-2 secunde. BD Era versiunea aia la care au dat ei licente acum cateva saptamani. -
Cel care a postat acolo codul ala, l-a luat tot dupa acel forum de aici Cred ca link-ul ar trebui sa duca mai bine catre postul original, si nu la acesta
-
[promotie] Bitdefender Internet Security 2013-1an
nedo replied to Usr6's topic in Programe securitate
Cheile vin, doar ca vin greu. La mine au venit dupa vreo 2 ore -
Cum sunt intregi notati in fisier, pe aceeasi linie, separati de spatii/virgule? Daca am inteles bine ai un fisier care contine niste numere si tu trebuie sa le sortezi? Pai citesti totul intr-un char dupa care creezi un array de int-uri si folosesti strtok pentru a imparti si atoi pentru a transforma din char in int. Exemplu strtok.Ma gandesc in loop-ul while (ch != NULL) { printf("%s\n", ch); ch = strtok(NULL, " ,"); Schimbi printf cu vector_ints = atoi(ch); unde vector_ints este un array de int-uri(int vector_ints[25] sau cam cate crezi tu ca sunt). Iar pentru sortare gasesti tu un algoritm de sortare, cel mai usor de implementat(cred) este bubble sort. Eventual posteaza un exemplu de cum arata fisierul f.
-
C++ acum vreo cateva luni(din pacate) ...proiecte - vezi semnatura.
-
Salut tex, fi tare. Sper ca in curand sa revii intre noi. Liberare!
-
Nytro, recomanzi cele 2 carti pentru un incepator-mediu in c++ ? Sa stiu daca sa le cumpar, am mai vazut vreo 3-4 care par interesante.
-
Multumesc, a mers
-
Mie imi da ca: "Unfortunately, you are not eligible to enter this promotion; please see the Official Rules for more details" Oare de ce?
-
Mersi, interesante tutoriale au cei de la guru99