Karimboyev Sardor 931_21
4-Tajriba ish
Mavzu: Takrorlanuvchi tuzilmali algoritmlar va ularning dasturi
Ishdan maqsad: C++ dasturlash tilining sikl operatorlari bilan tanishish. Sharti oldindan, shart oxiridan beriladigan takrorlanish va parametrik sikl operatorlarini o’rganish.
Nazariy qism.
Dastur kodining biror qismining ko’p marta bajarishi sikl hisoblanadi. Dastur kodining qandaydir qismini qandaydir shart asosida bir necha marta bajartirish uchun dasturlashda sikldan foydalaniladi. Agar shart rost bo’lsa sikl davom qiladi. Aks holda to’xtatiladi. Agar shart hamisha rost bo’lsa bunday sikl cheksiz sikl deb ataladi.
C++ da siklni tashkil qilish uchun while, do while va for operatorlari mavjud.
Siklni o’rganish uchun eng oson misol bu 1 dan n gacha natural sonlarning yig’indisini(1+2+3+…+n) topish dasturini tuzish. Bu yig’indini takrorlanish jarayoni orqali hisoblash uchun 1 dan n gacha sonlarni birma-bir qo’shib chiqish lozim. Yig’indining dastlabki qiymatini 0 ga tenglaymiz. Siklning har bir qadamida quyidagi amallar bajariladi:
s=0;
1-qadam. s=s+1=0+1=1;
2-qadam. s=s+2=1+2=3;
3-qadam. s=s+3=3+3=6;
4-qadam. s=s+4=6+4=10;
5-qadam. s=s+5=10+5=15;
………………………….
i-qadam. s=s+i;
………………………….
n-qadam. s=s+n;
1 dan n gacha sonlar yig’indisini topish uchun har bir qadamda navbatdagi sonni qo’shib borish uchun i o’zgaruvchi e’lon qilamiz.
#include
using namespace std;
int main() {
int s = 0, i = 1, n;
cin>>n;
while (i <= n) {
s += i;
i++; }
cout<<"s="<for sikli sintaksisi quyidagicha:
for(sikl boshlanishidan oldingi amallar; sikl davom etish sharti; siklning har bir iteratsiyasi oxiridagi amallar) {
sikl tanasi; }
Iteratsiya deb siklning bir marta bajarilishiga aytiladi. Agar ma’lum qadam bilan bitta o’zgaruvchining qiymatini o’zgartirib takrorlanuvchi jarayon amalga oshirish lozim bo’lsa, u holda uni quyidagicha xususiy holda yozishimiz mumkin:
for( o’zgaruvchi =boshlang’ich qiymat; o’zgaruvchi <=oxirgi qiymat; o’zgaruvchi +=sikl qadami) {
sikl tanasi; }
1 dan n gacha sonlar yig’indisini topish uchun quyidagicha sikl amalga oshirishimiz mumkin:
#include
using namespace std;
int main() {
int s = 0, n;
cin>>n;
for (int i = 1; i <= n; i++) {
s += i; }
cout<Misol. Ko’paytmalarning umumiy yi’gindisini hisoblang.
Bu masalani ko’paytmalarning yi’gindisi deb nomlanadi. i o’zgaruvchining har bir qiymatida m o’zgaruvchi 1 dan 14 gacha qiymatlarni barchasini ifodaga qo’yib, ko’paytmasini topiladi. Har bir ko’paytmaning yig’indisi masalaning javobi bo’ladi.
#include
#include
using namespace std;
int main(){
float t,r,f;
int i,m,n;
cin>>t>>r>>f>>n;
double s=0;
for(i=1;i<=32;i++){
double p=1;
for(m=1;m<=14;m++){
p *= (log(i)+t*pow(m, 1.0*i))/(r * pow(m, 1.0*i)+f * pow(n, 2.0*i)); }
s=s+p; }
cout<<"s="<return 0; }
Topshiriqlar
Topshiqlarni unda ko’rsatilgan sikldan foydalanib yozing.
1-Topshiriq. while sikli
#include
#include
using namespace std;
int main () {
double x,n;
cin>>x>>n;
int i=1; double s=0;
while (i<=n) {
s+=pow(x,(2*i-1))*1.0/i;
i++; }
cout<
2-Topshiriq. do while sikli
,
#include
#include
using namespace std;
int main () {
double x,y,c,a,b,h;
h=0.2; cin>>a>>b; x=a;
do { y=a*a*cos(x)+sin(x)+b*x*x;
x+=h;
cout<<"\ny("<while (x<=b); }
3-Topshiriq. for sikli
#include
#include
using namespace std;
int main () {
double x,n;
cin>>x>>n;
double s=0;
for (int i=1; i<=n; i++) {
s+=i/pow(x,2*i); }
cout<<"s="<
4-topshiriq
4. 0 bilan tugaydigan sonlar ketma ketligi berilgan bu ketma ketlikdan musbat sonlar yig’indisi topilsin.
Murakkab takrorlanuvchi sikl yordamida bajariladigan topshiriqlar
5-topshiriq
Variant
#include
#include
using namespace std;
int main () {
double s=0;
for (int k=1; k<=10; k++) {
s+=(pow(-1,k)*(k+1))/(k*k*k+k*k+1); }
cout<<"s="<
#include
#include
using namespace std;
int main () {
double s=1;
for (int i=1; i<=34; i++) {
s*=(i*i*i+fabs(i-9))/(log(i)+7*i); }
cout<<"s="< c)
#include
#include
using namespace std;
int main () {
double s=0;
for (int n=1; n<=35; n++) {
double p=1;
for (int m=1; m<=n; m++) {
p*=pow(-1,m)*((log10(m+5))/(pow(m,(n+3)+n*m))); }
s+=p; }
cout<
6-topshiriq
5. Berilgan natural sonning barcha tub bo’luvchi chop etilsin.
Do'stlaringiz bilan baham: |