Lista de probleme 102

Filtrare

Dificultate

Operații intrare/ieșire


Etichete

#1600 s_p_c_2

Scrieţi un program care citeşte din fişierul de intrare şiruri de caractere de forma tip#cuvânt, unde cuvânt este un şir oarecare de litere iar tip poate fi una din literele S, P sau C, semnificaţia fiind subiect, predicat sau complement. Programul va afişa, în ordine lexicografică, toate propoziţiile având structura subiect predicat complement ce pot fi formate cu ajutorul cuvintelor citite. Datele de intrare se consideră a fi corecte.

Admitere Informatica Iasi, 2012 - varianta modificată

#2484 key

Cristi are în sertar n chei vechi; fiecare a costat o anumită sumă exprimată în lei și fiecare a fost făcută pentru a deschide aceeași ușă. Atât cheile cât și ușa au un cod format din 3 litere. Din păcate, unele chei s-au deteriorat și Cristi le-a împărțit în 4 categorii:

  1. stricate – nicio o literă din codul cheii nu coincide cu litera de pe aceeași poziție din codul ușii, iar pentru a o repara trebuie sa plătească prețul integral al cheii;
  2. deteriorate – exact o litera din codul cheii coincide cu litera de pe aceeași poziție din codul ușii, iar pentru a o repara trebuie sa plătească două treimi din prețul cheii;
  3. slab deteriorate – exact două litere din codul cheii coincid cu literele de pe aceleași poziții din codul ușii, iar
    pentru a o repara trebuie sa platească o treime din prețul cheii;
  4. bune – codul cheii e identic cu codul ușii, iar cheia nu trebuie reparată;

Cerințe:

1) Să se afle câte chei din fiecare categorie are Cristi.
2) Sa se afle cât a plătit Cristi pentru a repara toate cheile.

Scrieţi un program care, citind de la tastatură cuvântul C, construieşte în memorie matricea reprezentării binare a cuvântului şi afişează pe ecran dimensiunea celei mai mari submatrici pătratice conţinând elemente având toate aceeaşi valoare (fie 0, fie 1).

Se citește un text cu cel mult 255 de caractere, litere mici și mari ale alfabetului englez și spații. Să se determine câte cuvinte au exact trei litere, cuvintele care încep și se termină cu vocală și lungimea celui mai lung cuvânt.

Scrieţi un program care citeşte din fişierul de intrare mai multe şiruri de caractere formate din litere mici ale alfabetului englez şi determină câte dintre acestea sunt formate din două şiruri identice (cu lungimea cel puţin 1) concatenate.

#1868 prosirx

Se consideră un text în care cuvintele sunt separate prin unul sau mai multe spații.

a) Să se determine determină numărul de consoane din textul citit.
b) Să se înlocuiască prima literă a fiecărui cuvânt din textul citit cu litera X (mare);
c) Să se modifice textul citit prin aranjarea în ordine lexicografică a tuturor cuvintelor din text și separarea lor prin câte un singur spațiu.

#1869 prosirz

Se citește un text format din cel mult 200 caractere (litere mici și/sau spații). a) Să se determine numărul de vocale din text. b) Să se înlocuiască ultima literă a fiecărui cuvânt cu litera Z (mare). c) Să se rearanjeze în ordine invers lexicografică cuvintele din text și să se separe aceste cuvinte prin câte un singur spațiu.

#1953 tabel1

Marius se pregătește pentru olimpiada de informatică. Astăzi, profesoara lui i-a predat șirurile de caractere. După școală și-a lăsat caietul de informatică pe birou, și frățiorul lui, pus pe șotii, a deschis caietul la ultima lecție și a văzut scris mare: TABEL ASCII. Pentru că îi place să scrie, s-a gândit să modifice puțin numerele din tabel. Așa că a șters unele din ele, scriind altele în loc. Marius nu a observat acest lucru și a început să rezolve problemele date de doamna profesoară. Are nevoie de ajutor, de aceea te roagă să îl ajuți să rezolve următoarea problemă, folosind tabelul ascii din caietul său: “Se dă un șir de caractere format din cifre și litere mari și mici ale alfabetului englez. Afișați suma valorilor tuturor literelor (valoarea unei litere se află în tabelul Ascii) și cel mai mare număr vale-deal care se poate forma cu cifrele care apar în șir. Un număr vale-deal are cifre distincte și cifrele din prima jumătate sunt în ordine descrescătoare, iar dele din a doua jumătate în ordine crescătoare. Exemplu : 98367 e număr vale-deal, 998367 nu e număr vale-deal, 987 nu e număr vale-deal.”

Cunoscând șirul format din cifre zecimale, litere mici și litere mari ale alfabetului englez, respectiv numerele modificate de fratele lui Marius, scrieți un program care să determine:

a) suma codurilor ASCII ale literelor din sir (folosind tabelul din caietul lui Marius);
b) cel mai mare număr vale-deal care are cifre ce apar în șir.

Se citește un text. Se cere criptarea acestuia folosind Encripția XOR.

#964 cod

Pentru codificarea textului unui mesaj s-a folosit codificarea ASCII, asociindu-se literelor mari ale alfabetului englez numerele distincte de la 65 la 90, literelor mici ale alfabetului englez numerele distincte de la 97 la 122, spaţiului numărul 32, iar punctului (.) numărul 46.

Fiecare linie a mesajului ce urmează a fi codificat, are cel mult 80 de caractere, textul lui fiind format din cuvinte separate printr-un singur spaţiu sau printr-un singur punct, iar cuvintele sunt formate numai din litere ale alfabetului

Codificarea textului mesajului este realizată astfel: fiecare cuvânt din text se scrie în ordine inversă, înlocuindu-se fiecare caracter cu şirul rezultat prin scrierea în ordine inversă a codului asociat acestuia. De exemplu codificarea caracterului z este şirul 221. Aceeaşi regulă de codificare se aplică atât spaţiului cât şi punctului.

Textul rezultat în urma codificării va conţine doar cifre, fără spaţii şi fără simboluri de punctuaţie.

să se scrie un program care să citească codificarea textului unui mesaj, să decodifice textul şi să afișeze

Olimpiada de Informatică, etapa pe sector, Bucureşti, 2007