Nümunə2. Sıfırdan yüzə (0-dan 100-ə) qədər olan və 7-yə bölünməyən bütün tam ədədlərin cəmini hesablayaq.
Bu məsələnin for və continue operatorlarından istifadə edərək C++ dilində proqram kodunu yazaq.
#include
#include
using namespace std;
int main()
{
int sum = 0;
for (int i = 1; i <= 100; i = i+1) {
if ( i % 7 == 0)
continue;
sum = sum + i;
}
cout<<"sum="<
return 0;
}
Burada continue operatoru əməliyyatın dövrün qalan hissəsinin buraxılmasına və növbəti iterasiyaya (təkrarlanmaya) keçidi təmin edir.
Funksiyalar
C++-də proqramlaşdırma zamanı çox vaxt elə olur ki, müəyyən məqsədi reallaşdıran bir qrup operatorları dəyişmədən onları proqramın bir neçə yerində istifadə etmək lazım gəlir. Bu isə proqramın mürəkkəbləşməsinə səbəb olur və çətinlik yaradır. Bu problemi aradan qaldırmaq üçün altproqram konsepsiyası təklif olunmuşdur. C++ dilində altproqramlar funksiyalar şəklində reallaşdırılır.
Funksiya müəyyən bir məsələni yerinə yetirən adlandırılmış təsvir və operatorlar dəstidir. Funksiya parametrləri qəbul edə və qiymət qaytara bilər. Funksiyaya emal üçün verilən informasiya parametr, funksiyanın hesablanmış nəticəsi isə onun qiyməti adlanır. Funksiyaya müraciət onun şağırılması adlanır. C++ dilində itənilən proqram bir və ya bir neçə funksiyadan ibarət ola bilər. Proqram emal olunan zaman birinci main funksiyası yerinə yetirilir.
Funksiya çağırılmamışdan əvvəl hökmən təsvir olunmalıdır. Funksiyanın təsviri başlıqdan və funksiyanın gövdəsindən ibarət olur:
Tip funksiyanın adı (dəyişənlərin siyahısı)
{
Funksiyanın gövdəsi
}
Funksiyanın başlığı aşağıdakılardan ibarət ola bilər:
Funksiyanın qaytarılan qiyməti istənilən tipli ola bilər, lakin void tipli qiymət qaytarmırsa;
Funksiyanın adı;
Funksiyaya ötürülən dəyişənlərin siyahısı. Dəyişənlər bir-birindən vergüllə ayrılmalıdır.
Funksiyanın gövdəsi təsvir və operatorlardan ibarət olub fiqurlu mötərizələr daxilində yazılır.
Ümumi halda C++ dilində proqramın strukturu aşağıdakı kimi ola bilər;
Kompilyatorun direktivləri
tip 1-ci ad (dəyişənlər siyahısı)
{
1-ci funksiyanın gövdəsi;
}
tip 2-ci ad (dəyişənlər siyahısı)
{
2-ci funksiyanın gövdəsi;
}
...
tip n-ci ad (dəyişənlər siyahısı)
{
n-ci funksiyanın gövdəsi;
}
int main(dəyişənlər siyahısı)
{
// funksiyanın gövdəsi 1-ci funksiyanı, 2-ci funksiyanı,..., n-ci funksiyanı çağırma operatorları ndan ibarət əsas funksiya gövdəsindən ibarət ola bilər;
}
Funksiyanı proqramın istənilən yerində çağırmaq olar. Funksiyanı çağırmaq üçün onun adını adi mötərizə daxilində arqumentlərin adı və ya qiymətləri aralarında vergül qoyulmaqla göstərilməlidir, yəni
Funksiyanın adı (dəyişənlər siyahısı);
Aşağıda heç bir giriş qiymətinə və nəticə formalaşdırmayan f() funksiyası tərtib edək:
#include
using namespace std;
void f() // funksiyanın təsviri.
{
cout<<”Salam,”<<”\n”;
}
int main()
{
f(); // funksiyanın çağırılması.
cout<<”Telebe”<<”\n”;
f(); // funksiyanın çağırılması.
cout<<”Muellim”<<”\n”;
}
Aşağıdakı nümunədə ekrana 10 dəfə “MAA” sözünü çıxaran proqram kodu verilmişdir. Burada fun() funksiyasından istifadə olunmuşdur.
#include
using namespace std;
void fun() // funksiyanın təsviri.
{
cout<<”MAA”<<”\n”;
}
int main()
{
for (int i=1; i<=10; fun(), i++);
cout<<”Telebe”<<”\n”;
}
Əgər qaytarılan qiymət void deyilsə, onda funksiya ifadənin tərkibinə daxil olur. Funksiyanı təyin olunmasında və onun çağırılmasında dəyişənlərin tipi və sıralanma ardıcıllığı üst-üstə düşməlidir. Funksiyanın qiymət qaytarması üçün onun tərkibində return(ifadə); operatoru olmalıdır.
Nümunə. N sayda müsbət tam ədəd daxil edilir. Hər bir ədəddə ən böyük və ən kiçik rəqəmləri tapan alqoritmin proqram C++ dilində kodunu yazmalı.
Proqram kodu aşağıdakı kimi olar:
#include
using namespace std;
unsigned int Cmax(unsigned long long int P)
{
unsigned int max;
if (P==0) max =0;
for (int i=1; P!=0; P/=10)
{
if (i==1){max=P%10; i++;}
if (P%10>max) max=P%10;
}
return max;
}
unsigned int Cmin(unsigned long long int P)
{
unsigned int min;
if (P==0) min =0;
for (int i=1; P!=0; P/=10)
{
if (i==1){min=P%10; i++;}
if (P%10
}
return min;
}
int main()
{
unsigned int N,k;
unsigned long long int X;
for (cout<<”N=”, cin>>N, k=1; k<=N; k++)
{
cout<<”X=”; cin>>X;
cout<<””maksimal reqem=”<
cout<<””minimal reqem=”<
}
return 0;
}
Dostları ilə paylaş: |