Informatică, întrebare adresată de DerekHale, 8 ani în urmă

Să se scrie o funcţie recursivă care cercetează existenţa unui caracter x într-un şir de caractere S.
DE REZOLVAT ÎN CODEBLOCKS (C++)

Răspunsuri la întrebare

Răspuns de boiustef
1

Răspuns:

Explicație:

#include <iostream>

#include <cstring>

using namespace std;

char S[250], x;

int n;

bool gasit(char S[250], char x, int n)

{

   if (S[n]==x) {  return true;}

   else

   {

       if (n-1==-1) return false;

       else gasit(S,x,n-1);

   }

}

int main()

{

   cout << "Sirul de caractere S= "; cin.getline(S,250);

   n=strlen(S);

   --n;

   cout << "caracterul cautata? x= "; cin >> x;

   cout << "exista caracterul in sir?: ";

   if (gasit(S,x,n)) cout << "DA";

   else cout << "NU";

}


DerekHale: Aici da greseala: if (S[n]==x) { return true;}
boiustef: la mine nu dă... poate e de la copy/paste?
boiustef: Ca sa stii, in momentul cand copiezi un cod de pe brainly si acesta are "spatii" la inceput, cand copiezi programu' o sa-ti arate ceva genu' ( https://prnt.sc/n6n3kr ) Eroarea ta sunt liniile alea rosii.. Copiaza codu' in word sau in ceva si dupa pune l in codeblocks sau in ce ai testat tu programu'. Sau pur si simplu sterge fiecare spatiu de la inceput..
DerekHale: Ia-ta ce eroare imi da (https://prnt.sc/nfercf). Ajutama te rog
boiustef: eu iţi propun să creezi codul din nou culegănd de la consolă codul scris de mine... erorile 302 şi 240 înseamnă că de la copiere ai nişte spaţii inutile..
DerekHale: Ok, acusi incercam
DerekHale: Ai fost drept. Mersi mult)
Alte întrebări interesante