BorjanCrvenkov

Задача 1 sp

Aug 4th, 2020 (edited)
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.54 KB | None | 0 0
  1. /* Да се напише целосно рекурзивна функција int brojSoglaski(char*) што ќе ги изброи согласките во дадена низа која се проследува како влезен аргумент во функцијата.
  2.  
  3. Потоа, да се напише програма во која од стандарден влез се внесува една текстуална низа, и се повикува функцијата brojSoglaski за да се отпечати на стандарден излез бројот на согласки. Текстуалната низа содржи најмногу 30 знаци.
  4.  
  5. Решението со нерекурзивна функција носи најмногу 30% од поените.
  6. Пример: strukturno programiranje
  7. Излез: 15
  8. Пример: Fakultet za informatika..
  9. Излез: 12
  10. */
  11. #include <stdio.h>
  12. #include <ctype.h>
  13.  
  14.  
  15. int brojSoglaski(char *niza,int i,int counter){
  16. if(niza[i]=='\0'){
  17. return counter;
  18. }else{
  19. if(niza[i]=='a'||niza[i]=='e'||niza[i]=='i'||niza[i]=='o'||niza[i]=='u'||
  20. niza[i]=='A'||niza[i]=='E'||niza[i]=='I'||niza[i]=='O'||niza[i]=='U')
  21. counter++;
  22. return brojSoglaski(++niza, i,counter);
  23. }
  24. }
  25.  
  26.  
  27. int main()
  28. {
  29. char niza[30];
  30. gets(niza);
  31. int counter=0;
  32. for(int i=0;i<strlen(niza);i++){
  33. if(isalpha(niza[i])){
  34. counter++;
  35. }
  36. }
  37. printf("%d",counter-brojSoglaski(niza,0,0));
  38. return 0;
  39. }
Add Comment
Please, Sign In to add comment