infoarena

infoarena - concursuri, probleme, evaluator, articole => Teme => Subiect creat de: Cindea Laurentiu Bogdan din Aprilie 14, 2010, 20:07:33



Titlul: Problema in Pascal
Scris de: Cindea Laurentiu Bogdan din Aprilie 14, 2010, 20:07:33
Un cod poate fi format din cel mult 20 de caractere(cifre sau litere mari)Sa se formeze un cod nou care sa inceapa cu literele primului cod, urmate de cifrele acestuia.
Exrmplu:cod: 17A3R9E cod nou:ARE1739.
Va rog daca puteti sa ma ajutati. :D in pascal :D


Titlul: Răspuns: Problema in Pascal
Scris de: Simoiu Robert din Aprilie 15, 2010, 09:12:43
Citesti initial codul ca un sir de caractere, apoi te duci cu un for de la 1 la lungimea sirului si tii intr-un vector toate literele, si in alt vector apoi cifrele, si apoi afisezi la sfarsit. Am o intrebare: trebuie afisate in ordinea data, sau in ordine alfabetica? Adica daca am un cod asa: B5A1, afisez BA51 sau AB15 ?


Titlul: Răspuns: Răspuns: Problema in Pascal
Scris de: Pripoae Teodor Anton din Aprilie 15, 2010, 11:48:26
Citesti initial codul ca un sir de caractere, apoi te duci cu un for de la 1 la lungimea sirului si tii intr-un vector toate literele, si in alt vector apoi cifrele, si apoi afisezi la sfarsit. Am o intrebare: trebuie afisate in ordinea data, sau in ordine alfabetica? Adica daca am un cod asa: B5A1, afisez BA51 sau AB15 ?

@spiderman Mie mi se pare ca a explicat in exemplu cum se face cand ai mai multe litere.

@laurentiu Faci 2 parcurgeri prin sir, in prima afisezi orice este litera, in a doua parcurgere afisezi orice este cifra.


Titlul: Răspuns: Problema in Pascal
Scris de: Cindea Laurentiu Bogdan din Aprilie 19, 2010, 14:02:00
da....asta ma gandeam si eu dar daca puteti sa-mi spuneti cum verific daca un caracter este cifra sau litera? :D


Titlul: Răspuns: Problema in Pascal
Scris de: Simoiu Robert din Aprilie 19, 2010, 14:13:50
Cod:
var c:char;
if (c >= '0' ) and (c <= '9') then ... //daca c e cifra
if (c >= 'a' ) and (c <= 'z') then ... // litera mica
if (c >= 'A' ) and (c <= 'Z') then ... // litera mare
if (c >= 'a' ) and (c <= 'z') or (c >= 'A' ) and (c <= 'Z') then ... // daca e CIFRA (mare sau mica)