Verilmiş sətri tərsinə çevirən funksiyanın təyini Misal 3. Sətrin uzunluğunu hesablayan length( ) funksiyasından istifadə edərək verilmiş sətri tərsinə çevirən funksiya təyin edək və əsas proqramdan bu funksiyaya müraciət edək. Burada sətrin tərsinə çevrilməsi qaydası yuxarıda göstərdiyimiz misal 2-dəki qaydadan fərqlidir. Sətrin uzunluğunu hesablamaq üçün standart funksiyadan istifadə edilmir.
#include using namespace std; //funksiyaların prototipləri
int length (char*str); void invers (char *str); //əsas proqram
int main( ) {char s[ ]=”1 2 3 4 5 6 7 8 9”; int n; invers (s); //Sətri tərsinə çevirən funksiyaya müraciət
cout < //Sətrin uzunluğunu hesablayan funksiya
int length(char*s) {int k; for(k=0; *s++!=’\o’; k++); return k; } //Sətri tərsinə çevirən funksiya
void invers (char*l) char c; int i,j,m; m=length (l); \\length-funksiyasına müraciət for (i=0, j=m-1; i {c=l[i]; l[i]=l[j]; l[j]=c;} } Proqramın yerinə yetirilməsi nəticəsində ekranda aşağıdaki sətri alarıq:
9 8 7 6 5 4 3 2 1 0.
Misal 4. Simvolu sətrə daxil edən funksiyanın təşkili Funksiyanın parametrləri: Sətir, simvolun əlavə olunduğu mövqe və sətrə əlavə olunan simvol. Bu funksiyadan əsas proqramda isitifadə edək və verilən sətri, mövqeyi və simvolu giriş operatoru vasitəsi ilə daxil edək.
//Simvolun sətrə əlavə olunması
#include #include void insert (char*str, int p, char c) {int i; for (i=strlen(str); i>=p; i--) str[i++]=str[i];
str[p]=c; } void main( ) {char c, s[100]; int n; cout<<”\n sətri daxil edin:”; for (i=0; i cin>>s[i]; cout<<”\n qoyulan simvolun mövqeyini daxil edin:”; cin>>n; cout<<”\n simvolu daxil edin:”; cin>>c; insert (s, n, c); cout<<”\n nəticə:”; for(i=0; i cout< } Proqramın yerinə yetirilməsi və ekranla dialoq nəticəsində alarıq:
sətri daxil edin:
0 1 2 3 4 5 6 7 8 9
qoyulan simvolun mövqeyini daxil edin:
4 Simvolu daxil edin:
* nəticə:
0 1 2 3 * 4 5 6 7 8 9
Məsələlər. Verilmiş sətirdə rəqəmlərin sayını hesablayan proqram yazın.
Verilmiş sətirdən bu sətirdəki simvolların kodundan ibarət olan ədədi massiv formalaşdıran proqram yazın.
İki verilmiş sətirlərin bərabərliyini yoxlayan funksiya tərtib edin.
Verilmiş sətirdə cüt nömrəli simvolları silən proqram yazın.
İki sətri birləşdirən funksiya tərtib edin. Əsas proqramda bu funksiyadan dörd sətrin birləşdirilməsi üçün istifadə edin.
Simvollar ardıcıllığı şəklində verilən 10-luq tam ədədi uyğun tam ədədə çevirən funksiya tərtib edin.
Simvollar ardıcıllığı şəklində verilən həqiqi ədədi uyğun həqiqi ədədə çevirən funksiya tərtib edin.