Jump to content

SUBIECTE NOI
« 1 / 5 »
RSS
Mobile.de ofera imprumut de bani ...

problema test grila

Digi24 a disparut de pe TV Lg

Drept de proprietate intelectuala...
 Jante noi shitbox

Trinitas TV 4K

Dacia 1316 cu 6 usi ...

Frecventa modificata radio
 Un nou pericol pt batrani

Ar trebuii sa vindem imobiliarele...

Dupa renuntarea la aparat dentar

pelerinaj in Balcik
 Noul format Jpegli iși propu...

Dade, dade

Probleme accesare nr test telefon

Parola la lock screen
 

Probleme in C

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

#1
Darkslayer34

Darkslayer34

    New Member

  • Grup: Junior Members
  • Posts: 2
  • Înscris: 20.12.2017
Buna seara/buna dimineata tuturor!

Incep prin a-mi cere scuze daca u postez unde trebuie, sunt nou pe acest site si un pic disperat. Sunt anul 1 la politehnica si am anumite probleme cu o materie. Am un set de probleme pe care nu le inteleg, dar mai sa le si rezolv. Multumesc pentru atentie si orice ajutor e apreciat!

Edit: ce este o gramatica?

1. Palindrom
Fie următoarea gramatică: S ::= . | aSa | bSb | zSz
Scrieți un program (în C sau ML) care determină dacă caracterele care apar în intrare (până la linie nouă) formează un șir generat de gramatică sau nu.
În ML apelul input_char stdin returnează un caracter citit de la intrare (sau generează excepția End_of_file; în acest exercițiu nu se cere s-o tratăm).
2. Litere mari și mici
Fie următoarea gramatică: S ::= ε | ASa | BSb | ... | ZSz
Scrieți un program (în C sau ML) care determină dacă caracterele care apar în intrare (până la linie nouă) formează un șir generat de gramatică sau nu.
Indicație: Scrieți o funcție care are ca parametru caracterul citit (apelată dacă acesta e majusculă).
3. Enumerarea șirurilor Putem asocia fiecărui șir s de paranteze echilibrate un număr N(s) în felul următor: N(ε) = 0, N( (S1)S2 ) = 2N(S1) (2 N(S2)+1)
a) Demonstrați că funcția N e o bijecție
B) Scrieți o funcție care citește de la intrare un șir de paranteze echilibrate și returnează numărul său (sau -1 în caz de eroare).
c) Scrieți o funcție care ia ca parametru un număr nenegativ și tipărește șirul de paranteze echilibrate asociat cu numărul respectiv.

#2
james_tont89

james_tont89

    Member

  • Grup: Members
  • Posts: 704
  • Înscris: 25.11.2015
incearca te rog sa formulezi tot ce ai spus mai sus si in limba romana

#3
MarianG

MarianG

    be that as it may

  • Grup: Moderators
  • Posts: 31,444
  • Înscris: 10.08.2005
gramatica
https://people.mpi-s...ssberg/sml.html

#4
Darkslayer34

Darkslayer34

    New Member

  • Grup: Junior Members
  • Posts: 2
  • Înscris: 20.12.2017
Acestea sunt cerintele, nu stiu ce sa traduc in limba romana

#5
andreim77

andreim77

    Senior Member

  • Grup: Senior Members
  • Posts: 4,235
  • Înscris: 11.04.2006
Nici james nici tu nu aveti cunostintele teoretice pt a intelege ce vi se cere.
Solutia e studiul intens. Aici ajutor veti primi doar daca stiti despre ce discutati.

#6
dani.user

dani.user

    Guru Member

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

View PostDarkslayer34, on 20 decembrie 2017 - 00:37, said:

Edit: ce este o gramatica?

Un set de reguli, asa cum la lectiile de gramatica ale limbii romane ni se spunea in ce ordine trebuie sa punem subiectul, predicatul, etc.

Cam ciudat sa studiati asa ceva dupa doar cateva luni de facultate.

View PostDarkslayer34, on 20 decembrie 2017 - 00:37, said:

1. Palindrom
Fie următoarea gramatică: S ::= . | aSa | bSb | zSz

Adica pe romaneste: un sir ce fie e format dintr-o singura litera, fie e egal cu inversul sau (aba, bxyzyxb, etc)

Pornind de la definitia recursiva a gramaticii, implementarea in C e triviala. Scris in graba, conform gramaticii:
int ePalindrom(const char* sir, unsigned int lungime)
{
   if (lungime == 0) return 0;
   if (lungime == 1) return 1;
   if (sir[0] != sir[lungime - 1]) return 0;
   if ((sir[0] < 'a') || (sir[0] > 'z')) return 0;
   return ePalindrom(sir + 1, lungime - 2);
}


DAR, nu e deloc eficienta. Varianta mai eficienta va las pe voi s-o scrieti.

Edited by dani.user, 20 December 2017 - 18:50.


#7
andreim77

andreim77

    Senior Member

  • Grup: Senior Members
  • Posts: 4,235
  • Înscris: 11.04.2006
ca sa filozofam putin, si sirul gol e egal cu inversul lui :P

#8
dani.user

dani.user

    Guru Member

  • Grup: Senior Members
  • Posts: 30,238
  • Înscris: 24.02.2007
E, dar gramatica mentionata nu include sirul gol la primul subpunct.

Anunturi

Chirurgia cranio-cerebrală minim invazivă Chirurgia cranio-cerebrală minim invazivă

Tehnicile minim invazive impun utilizarea unei tehnologii ultramoderne.

Endoscoapele operatorii de diverse tipuri, microscopul operator dedicat, neuronavigația, neuroelectrofiziologia, tehnicile avansate de anestezie, chirurgia cu pacientul treaz reprezintă armamentarium fără de care neurochirurgia prin "gaura cheii" nu ar fi posibilă. Folosind tehnicile de mai sus, tratăm un spectru larg de patologii cranio-cerebrale.

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