0% found this document useful (0 votes)
7 views9 pages

Class3 CPP

Php

Uploaded by

khaktaha3
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
7 views9 pages

Class3 CPP

Php

Uploaded by

khaktaha3
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 9

‫ﺟﻠﺴﻪ ‪ :‬ﺳﻮم‬

‫ﻣﺪرس ‪ :‬اﻟﻬﺎم ﯾﻮﺳﻔﯽ‬


‫‪ ‬اﻟﮕﻮرﯾﺘﻤﯽ ﺑﻨﻮﯾﺴﯿﺪ ﮐﻪ ﻣﻌﮑﻮس ﯾﮏ ﻋﺪد ‪ n‬رﻗﻤﯽ را ﻣﺤﺎﺳﺒﻪ ﮐﻨﺪ‪.‬‬
‫‪x‬‬ ‫‪R‬‬ ‫‪k‬‬ ‫‪b‬‬ ‫ﭼﺎپ ‪R‬‬
‫‪123‬‬ ‫‪ -1‬ﺷﺮوع‬
‫‪0‬‬
‫‪12‬‬ ‫‪ x -2‬را درﯾﺎﻓﺖ ﮐﻦ‪.‬‬
‫‪3‬‬
‫‪0*10+3=3‬‬ ‫‪R ← 0 -3‬‬
‫‪12‬‬
‫‪1‬‬
‫‪k ← x/10 -4‬‬
‫‪2‬‬
‫‪3*10+2=32‬‬
‫‪b ← x%10 -5‬‬
‫‪1‬‬
‫‪0‬‬
‫‪R ← R*10+b -6‬‬
‫‪1‬‬
‫‪32*10+1=321‬‬
‫‪ -7‬اﮔﺮ ‪ R ، k=0‬را ﭼﺎپ ﮐﻦ در ﻏﯿﺮ اﯾﻨﺼﻮرت ‪ x ← k‬و ﺑﺮو ﺑﻪ ‪4‬‬
‫‪321‬‬

‫‪ -8‬ﭘﺎﯾﺎن‬
‫‪2‬‬
‫‪ ‬اﻟﮕﻮرﯾﺘﻤﯽ ﺑﻨﻮﯾﺴﯿﺪ ﮐﻪ ﻋﺪد ﻃﺒﯿﻌﯽ ‪ n‬را درﯾﺎﻓﺖ ﮐﻨﺪ و ﻣﺠﻤﻮع ‪ n‬ﺟﻤﻠﻪ زﯾﺮ را ﭼﺎپ ﮐﻨﺪ‪.‬‬

‫‪1‬‬ ‫‪1‬‬ ‫‪1‬‬ ‫‪1‬‬


‫‪S = 1- +‬‬ ‫‪-‬‬ ‫‪+‬‬ ‫…‪-‬‬
‫‪4‬‬ ‫‪9‬‬ ‫‪16‬‬ ‫‪25‬‬

‫ﭼﺎپ ‪S‬‬
‫‪ -1‬ﺷﺮوع‬
‫‪n‬‬ ‫‪S‬‬ ‫‪f‬‬ ‫‪i‬‬
‫‪ n -2‬را ﺑﺨﻮان‬
‫‪4‬‬
‫‪0‬‬ ‫‪1‬‬ ‫‪1‬‬
‫‪) i ← 1 ، f ← 1 ، S ← 0 -3‬ﺷﻤﺎرﻧﺪه ﺣﻠﻘﻪ(‬
‫‪0+1/1‬‬
‫‪-1‬‬ ‫‪2‬‬ ‫‪ -4‬ﺗﺎ زﻣﺎﻧﯿﮑﻪ ‪ i<= n‬دﺳﺘﻮرات ‪ 5‬و ‪ 6‬را اﺟﺮا ﮐﻦ‬
‫)‪1+(-1/4‬‬
‫‪1‬‬ ‫‪3‬‬ ‫‪S ← S+ f / (i*i) -5‬‬
‫‪1-1/4 +1/9‬‬ ‫‪ n‬ﺑﺎر ﺣﻠﻘﻪ ﺗﮑﺮار ﻣﯽﺷﻮد‬
‫‪-1‬‬ ‫‪4‬‬ ‫‪i ← i+1 ، f ← -f -6‬‬
‫)‪1-1/4 +1/9 +(-1/16‬‬
‫‪1‬‬ ‫‪5‬‬ ‫‪ S -5‬را ﭼﺎپ ﮐﻦ‬
‫‪1-1/4 +1/9 -1/16‬‬
‫‪ -6‬ﭘﺎﯾﺎن‬

‫‪3‬‬
‫ﻓﻠﻮﭼﺎرت ﻣﺠﻤﻮﻋﻪ اي از ﻧﻤﺎدﻫﺎي ﺗﺼﻮﯾﺮي ﺑﺮاي ﺑﯿﺎن و درك ﺑﻬﺘﺮ اﻟﮕﻮرﯾﺘﻢ اﺳﺖ‪.‬‬

‫ﻋﻼﺋﻢ ﻓﻠﻮﭼﺎرت ‪:‬‬

‫‪yes‬‬

‫‪no‬‬

‫ﺷﺮوع و ﭘﺎﯾﺎن‬ ‫اﻧﺘﺴﺎب و ﭘﺮدازش‬ ‫ورودي ﯾﺎ ﺧﺮوﺟﯽ‬ ‫ﺧﺮوﺟﯽ )ﭼﺎپ(‬ ‫ﺷﺮط‬

‫‪Start‬‬ ‫‪i ← i+1‬‬ ‫‪Read x‬‬ ‫‪Print x‬‬ ‫‪yes‬‬


‫‪a>b‬‬

‫‪End‬‬ ‫‪Print x‬‬ ‫‪no‬‬

‫‪4‬‬
‫‪ ‬ﻓﻠﻮﭼﺎرﺗﯽ رﺳﻢ ﮐﻨﯿﺪ ﮐﻪ ‪ n‬ﻋﺪد ﺻﺤﯿﺢ را درﯾﺎﻓﺖ و ﮐﻮﭼﮑﺘﺮﯾﻦ و ﺑﺰرﮔﺘﺮﯾﻦ آﻧﻬﺎ را ﭼﺎپ ﮐﻨﺪ‪.‬‬

‫‪ : i‬ﺷﻤﺎرﻧﺪه ﺣﻠﻘﻪ‬ ‫‪ : max‬ﺑﺰرﮔﺘﺮﯾﻦ ﻋﺪد‬ ‫‪ : min‬ﮐﻮﭼﮑﺘﺮﯾﻦ ﻋﺪد‬ ‫‪ : A‬ﻋﺪد‬ ‫‪ : n‬ﺗﻌﺪاد اﻋﺪاد‬

‫‪start‬‬ ‫‪n‬‬ ‫‪A‬‬ ‫‪min‬‬ ‫‪max‬‬ ‫‪i‬‬ ‫ﭼﺎپ‬


‫‪max,min‬‬
‫‪3‬‬ ‫‪100‬‬
‫‪Read‬‬
‫‪n,A‬‬ ‫‪100‬‬ ‫‪100‬‬ ‫‪1‬‬
‫‪50‬‬
‫‪min ←A‬‬ ‫‪50‬‬ ‫‪2‬‬
‫‪max ←A‬‬ ‫‪200‬‬
‫‪i ←1‬‬ ‫‪200‬‬ ‫‪3‬‬
‫‪50 , 200‬‬

‫‪yes‬‬ ‫‪yes‬‬
‫‪i<n‬‬ ‫‪Read A‬‬ ‫‪A>max‬‬ ‫‪max ←A‬‬ ‫‪i ←i+1‬‬

‫‪no‬‬ ‫‪no‬‬
‫‪Print‬‬
‫‪min,max‬‬ ‫‪yes‬‬
‫‪A<min‬‬ ‫‪min ←A‬‬
‫‪no‬‬
‫‪End‬‬ ‫‪5‬‬
‫‪ ‬ﻓﻠﻮﭼﺎرﺗﯽ رﺳﻢ ﮐﻨﯿﺪ ﮐﻪ ﻋﺪد ﻃﺒﯿﻌﯽ ‪ n‬را درﯾﺎﻓﺖ ﮐﻨﺪ و ﻣﺠﻤﻮع ﻋﺒﺎرت زﯾﺮ را ﻣﺤﺎﺳﺒﻪ ﮐﻨﺪ‪.‬‬
‫‪1‬‬ ‫‪1‬‬ ‫‪1‬‬ ‫‪1‬‬
‫‪S = 1+ +‬‬ ‫‪+‬‬ ‫‪+ …+‬‬
‫‪2‬‬ ‫‪3‬‬ ‫‪4‬‬ ‫‪n‬‬
‫‪start‬‬

‫‪Read n‬‬

‫‪S ←1‬‬
‫‪i ←2‬‬

‫‪1‬‬
‫‪yes‬‬ ‫‪S ← S+‬‬
‫‪i<=n‬‬ ‫‪i‬‬
‫‪i ←i+1‬‬
‫‪no‬‬

‫‪Print‬‬
‫‪S‬‬

‫‪End‬‬
‫‪6‬‬
‫‪ ‬ﻓﻠﻮﭼﺎرﺗﯽ رﺳﻢ ﮐﻨﯿﺪ ﮐﻪ ﻓﺎﮐﺘﻮرﯾﻞ ﻋﺪد درﯾﺎﻓﺘﯽ را ﻧﻤﺎﯾﺶ دﻫﺪ‪.‬‬

‫‪start‬‬ ‫‪3! = 3*2*1‬‬

‫‪Read y‬‬
‫ﻣﺘﻐﯿﺮﻫﺎي ﭘﯿﺸﻨﻬﺎدي‪:‬‬
‫‪ : y‬ﻋﺪد‬

‫‪fact ←1‬‬ ‫‪ : fact‬ﻓﺎﮐﺘﻮرﯾﻞ‬


‫‪ : i‬ﺷﻤﺎرﻧﺪه ﺣﻠﻘﻪ‬

‫‪yes‬‬ ‫‪fact ←fact *y‬‬


‫‪y>1‬‬
‫‪y ←y-1‬‬

‫‪no‬‬

‫‪fact‬‬

‫‪End‬‬
‫‪7‬‬
‫‪ ‬ﻓﻠﻮﭼﺎرﺗﯽ رﺳﻢ ﮐﻨﯿﺪ ﮐﻪ ﻓﺎﮐﺘﻮرﯾﻞ ﻋﺪد درﯾﺎﻓﺘﯽ را ﻧﻤﺎﯾﺶ دﻫﺪ‪) .‬ﺑﻪ روش دﯾﮕﺮ(‬

‫‪start‬‬ ‫‪3! = 1*2*3‬‬

‫‪Read y‬‬
‫ﻣﺘﻐﯿﺮﻫﺎي ﭘﯿﺸﻨﻬﺎدي‪:‬‬
‫‪ : y‬ﻋﺪد‬
‫‪fact ←1‬‬ ‫‪ : fact‬ﻓﺎﮐﺘﻮرﯾﻞ‬
‫‪i ←1‬‬
‫‪ : i‬ﺷﻤﺎرﻧﺪه ﺣﻠﻘﻪ‬

‫‪yes‬‬ ‫‪fact ←fact *i‬‬


‫‪i<=y‬‬
‫‪i ←i+1‬‬

‫‪no‬‬

‫‪fact‬‬

‫‪End‬‬
‫‪8‬‬
‫‪ ‬ﻓﻠﻮﭼﺎرﺗﯽ رﺳﻢ ﮐﻨﯿﺪ ﮐﻪ ﯾﮏ ﻋﺪد ‪ n‬رﻗﻤﯽ را درﯾﺎﻓﺖ ﮐﻨﺪ ﻧﺸﺎن دﻫﺪ آﯾﺎ رﻗﻢ ﺳﻤﺖ راﺳﺖ آن ﺑﺎ رﻗﻢ ﺳﻤﺖ ﭼﭗ ﺑﺮاﺑﺮ اﺳﺖ؟‬

‫‪9‬‬

You might also like