Jump to content

SUBIECTE NOI
« 1 / 5 »
RSS
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
 Deparazitare externa pisici fara ...

Seriale turcesti/coreene online H...

Merita un Termostat Smart pentru ...

Sfat achizitie MTB Devron Riddle
 

[Tema] Sufixul unui cuvant fara a utiliza alte variabile

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

#1
1marius1

1marius1

    Member

  • Grup: Members
  • Posts: 587
  • Înscris: 29.03.2012
Salut!
Am problema urmatoare de rezolvat:
[ https://i.imgur.com/AdzQ9fy.jpg - Pentru incarcare in pagina (embed) Click aici ]

Daca as putea utiliza alte variabile, as stii cum sa o rezolv...
Dar fara a utiliza alte variabile, nu stiu cum as putea sa fac ca dupa prima afisare, i-ul sa creasca cu o unitate pentru a afisa sufixul si asa mai departe...

Vreo ideie?
Multumesc anticipat!

Edited by 1marius1, 30 April 2016 - 14:32.


#2
MarianG

MarianG

    be that as it may

  • Grup: Moderators
  • Posts: 31,443
  • Înscris: 10.08.2005
pai i-ul creste
tu afiseaza textul

#3
aLexCM

aLexCM

    Active Member

  • Grup: Members
  • Posts: 1,079
  • Înscris: 26.01.2014
In for faci un strcpy, apoi afisezi iar i-ului ii dai valoarea 0.

#4
1marius1

1marius1

    Member

  • Grup: Members
  • Posts: 587
  • Înscris: 29.03.2012

 aLexCM, on 30 aprilie 2016 - 15:09, said:

In for faci un strcpy, apoi afisezi iar i-ului ii dai valoarea 0.

Cu cine sa fac strcpy ca nu am voie sa folosesc alta variabila...

 MarianG, on 30 aprilie 2016 - 15:00, said:

pai i-ul creste
tu afiseaza textul

Stiu ca creste...

EDIT:
Am rezolvat problema:
for(int i=0;i<strlen(s);i++)
{
  cout<<s[i];
  s[i]=s[i+1];
  if(i==strlen(s))
  {
   cout<<" ";
   i=-1;
  }
}


Afiseaza corect...
Vreau sa stiu daca e bine ce am facut...

Edited by 1marius1, 30 April 2016 - 15:55.


#5
MarianG

MarianG

    be that as it may

  • Grup: Moderators
  • Posts: 31,443
  • Înscris: 10.08.2005
ce anume mai creste pe masura ce citesti textul caracter cu caracter ?

#6
1marius1

1marius1

    Member

  • Grup: Members
  • Posts: 587
  • Înscris: 29.03.2012

 MarianG, on 30 aprilie 2016 - 15:56, said:

ce anume mai creste pe masura ce citesti textul caracter cu caracter ?
Am dat edit la postarea de mai sus... Spune-mi daca e bun programelul...

#7
MarianG

MarianG

    be that as it may

  • Grup: Moderators
  • Posts: 31,443
  • Înscris: 10.08.2005
explica ce ai facut si ai sa vezi ca nu e bun

Edited by MarianG, 30 April 2016 - 16:02.


#8
1marius1

1marius1

    Member

  • Grup: Members
  • Posts: 587
  • Înscris: 29.03.2012

 MarianG, on 30 aprilie 2016 - 16:02, said:

explica ce ai facut si ai sa vezi ca nu e bun
Scriu primul caracter al textului.
Iar in locul primului caracter pun al doilea caracter din text
Si asa mai departe pana cand textul ramane fara primul carcater.
Apoi verific daca i-ul este egal cu lungimea sirului, si daca este voi afisa: un spatiu si i-ul va primi -1 deoarece i-ul va creste cu o unitate din cauza for-ului.
Apoi se reia ce am zis mai sus pana cand strlen(s) va fi egal cu 0.

Edited by 1marius1, 30 April 2016 - 16:10.


#9
MarianG

MarianG

    be that as it may

  • Grup: Moderators
  • Posts: 31,443
  • Înscris: 10.08.2005
problema asta se rezolva cu o singura instructiune, totul tine de unde incepi sa citesti

p.s. daca tot lucrezi in C++ ai vrea sa citesti despre "string"

Edited by MarianG, 30 April 2016 - 16:14.


#10
aLexCM

aLexCM

    Active Member

  • Grup: Members
  • Posts: 1,079
  • Înscris: 26.01.2014
Eu am facut asa si merge.

for(i=0;i<strlen(s);i++)
	   {
		   strcpy(s,s+i);
		   cout<<s<<" ";
		   i=0;
	   }



#11
MarianG

MarianG

    be that as it may

  • Grup: Moderators
  • Posts: 31,443
  • Înscris: 10.08.2005
i = 0 // elevi
i = 1 // xlevi
i = 2 // xxevi
i = 3 // xxxvi
i = 4 // xxxxi

pe cand la voi i va fi tot timpul zero respectiv unu.
dar se va schimba lungimea lui s

Edited by MarianG, 30 April 2016 - 16:25.


#12
1marius1

1marius1

    Member

  • Grup: Members
  • Posts: 587
  • Înscris: 29.03.2012

 MarianG, on 30 aprilie 2016 - 16:24, said:

i = 0 // elevi
i = 1 // xlevi
i = 2 // xxevi
i = 3 // xxxvi
i = 4 // xxxxi

pe cand la voi i va fi tot timpul zero respectiv unu.
dar se va schimba lungimea lui s

Asa e bun?
for(int i=0;i<strlen(s);i++)
	 cout<<s+i<<" ";


O sursa bune pentru a invata despre siruri imi poti da?

Edited by 1marius1, 30 April 2016 - 16:36.


#13
MarianG

MarianG

    be that as it may

  • Grup: Moderators
  • Posts: 31,443
  • Înscris: 10.08.2005
http://www.cplusplus.../string/substr/

http://www.tutorials...a_structure.htm

#14
1marius1

1marius1

    Member

  • Grup: Members
  • Posts: 587
  • Înscris: 29.03.2012

 MarianG, on 30 aprilie 2016 - 16:43, said:

Mersi!

#15
sftpdt

sftpdt

    Senior Member

  • Grup: Senior Members
  • Posts: 3,665
  • Înscris: 29.08.2013
char *cuvant = "carusel";
cout << cuvant + 1 << endl;
cout << cuvant + 2 << endl;


Quote

arusel
rusel

Nu e nevoie să modifici variabila. Un cout / printf în acel for şi gata.

Anunturi

Neurochirurgie minim invazivă Neurochirurgie minim invazivă

"Primum non nocere" este ideea ce a deschis drumul medicinei spre minim invaziv.

Avansul tehnologic extraordinar din ultimele decenii a permis dezvoltarea tuturor domeniilor medicinei. Microscopul operator, neuronavigația, tehnicile anestezice avansate permit intervenții chirurgicale tot mai precise, tot mai sigure. Neurochirurgia minim invazivă, sau prin "gaura cheii", oferă pacienților posibilitatea de a se opera cu riscuri minime, fie ele neurologice, infecțioase, medicale sau estetice.

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