User Tag List

Էջ 14 36-ից ԱռաջինԱռաջին ... 410111213141516171824 ... ՎերջինըՎերջինը
Ցույց են տրվում 196 համարից մինչև 210 համարի արդյունքները՝ ընդհանուր 536 հատից

Թեմա: C++

  1. #196
    Պատվավոր անդամ armen9494-ի ավատար
    Գրանցման ամսաթիվ
    01.03.2010
    Տարիք
    31
    Գրառումներ
    1,242
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Մեջբերում Varzor-ի խոսքերից Նայել գրառումը
    Ճիշտ է, գրածս ցիկլերի հետ կապ չունի: Կապ ունի տիպերի կոնվերտացիաների, երկուական համակարգի հատկությունների և տեքստային ֆունկիցաների հետ:
    Բայց բարդ չի: Ցանկացած 2-ի աստիճան երկուական տեսքով իրենից ներկայացնում է 1 և հետևից էլ աստիճանի քանակով զրոների հավաքածու: Դու դա հաստատ անցել ես: Օրինակ` 8=23; 810=10002 a այսինքն` 1 հատ 1 ու պոչից 3 հատ 0: Բնական է, որ 2-ի աստիճան հանդիսացող թվի երկուական տեսքի սիմվոլների երկարության քանակը աստիճանից մեկով ավել է: եհնց այդ հատկության վրա էլ հիմնվել եմ լուծում տալուց:
    Պարզ ա, իսկ մյուս թվերի համար կարո՞ղ եմ C++-ով գրել նման ծրագիր, թե՞ միայն կարողանում է թիվը երկուական դարձնել:

  2. #197
    Լիարժեք անդամ Ruzanna Stepanyan-ի ավատար
    Գրանցման ամսաթիվ
    11.02.2012
    Գրառումներ
    81
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Արմեն ջան էս խնդիրը հենց ցիկլերի խնդիր է 11-րդ դասարանի դասագրքից:
    Ես մի քիչ նայեմ, հասկանամ, ոնց եք բացատրել ու գրեմ հա հարց որ լինի:

    Շատ շատ շնորհակալ եմ

    Մեջբերում armen9494-ի խոսքերից Նայել գրառումը
    Վարզոր ջան, չեմ կարծում որ Ռուզանը բան հասկացավ այս գրածից. մի մոռացի, որ նոր է սկսել ուսումնասիրել ծրագրավորումը, իսկ խնդիրը իմ կարծիքով հենց ցիկլերի բաժնից է: Ինքս նման բաներ դեռ չեմ անցել:
    Ճիշտը որ ասեմ՝ ես էլ էդքան լավ չհասկացա գրածդ, բայց կփորձեմ նորից նայել:

    Հասկացա
    Իրոք որ հոյակապ լուծում է, թվերի համակարգերը իմանալու դեպքում շատ հեշտ հասկանալի

    Մի հարց ունեմ՝ եթե խնդիրը լիներ 3-ի աստիճանի համար, ապա պիտի անցնեիք երեքական տեսքի՞:

  3. #198
    Լիարժեք անդամ Ruzanna Stepanyan-ի ավատար
    Գրանցման ամսաթիվ
    11.02.2012
    Գրառումներ
    81
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Տրված է n բնական թիվը, որը 2-ի որևէ աստիճան է հանդիսանում :
    Հաշվել և արտածել k-ի արժեքը:

    Խնդիր սա է:

    Խնդրում եմ եթե դժվար չի քայլ ռա քայլ բացատրեք էլի, որ ես հասկանամ, հետո էլ աշակերտներիս հասկացնեմ




    Մեջբերում armen9494-ի խոսքերից Նայել գրառումը
    Ճիշտն ասած ձեր գրածի ալգորիթմը չհասկացա, նամանավանդ էն պահը, որ n-ը ներմուծելուց հետո նրան 2 եք վերագրում
    Քանի որ ասեցիք, որ սովորելու նպատակով եք այս խնդիրները ուսումնասիրում, ասեմ մի քանի բան, որ ձեր խնդրի մեջ սխալ են (ալգորիթմը մի կողմ դրած):
    Նախ քանի որ դուք օգտագործում եք pow-ը, պետք է ծրագրին կցված լինի math.h-ը՝
    #include <math.h>
    k թիվը պետք չէ double տիպի հայտարարել, քանի որ այն միայն ամբողջ արժեքներ կարող է ընդունել:
    k+=1-ի փոխարեն ավելի ճիշտ է գրել k++ կամ ++k

    Այս պահը սխալ չէ, բայց ճիշտ կանեք հակառակը գրել (ինքս էլ եմ հաճախ էս ձևով գրում ու ուզում եմ իմ մեջ փոխել սա)
    while (n==(pow(2,k)))
    while ((pow(2,k))==n)
    որովհետև հաճախ սխալվում ենք ու ==-ի փոխարեն դնում ենք =
    while (n=(pow(2,k))) էս դեպքում ծրագիրը error չի տա, ու սխալ արդյունք կստանանք, իսկ մյուս դեպքում սխալ կտա, քանի որ pow(2,k)-ին չի կարող վերագրել n-ի արժեքը:


    Մի հարց՝ մեզ տրված թիվը հաստատ 2-ի աստիճան է, թե կարող է ուրիշ թիվ էլ լինել: Լավ, հիմա կգրեմ էն տարբերակը, երբ հաստատ 2-ի աստիճան է, եթե մյուսը լինի, ասեք, մյուս տարբերակի համար էլ կսարքեմ այնպես, որ ուրիշ թիվ ներմուծելու դեպքում ասի կրկին ներմուծեք:

    Կառաջարկեմ այս եղանակը. բացում ենք նախապայմանով ցիկլ, ցիկլի մեջ n-ը բաժանում ենք երկուսի և k-ն մեկով ավելացնում ենք: Ցիկլի պայմանը n!=1-ն է: Այսինքն թիվը այնքան ենք բաժանում 2-ի վրա, մինչև դառնա մեկ:



    ___

  4. #199
    Պատվավոր անդամ armen9494-ի ավատար
    Գրանցման ամսաթիվ
    01.03.2010
    Տարիք
    31
    Գրառումներ
    1,242
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Մեջբերում Ruzanna Stepanyan-ի խոսքերից Նայել գրառումը
    Խնդրում եմ եթե դժվար չի քայլ ռա քայլ բացատրեք էլի, որ ես հասկանամ, հետո էլ աշակերտներիս հասկացնեմ
    Կասե՞ք, թե գրածիս որ մասը կոնկրետ հասկանալի չի, կարծում եմ էդ դեպքում ձեզ էլ ավելի հեշտ կլինի հասկանալ՝ կիմանաք, թե կոնկրետ որտեղ եք թերանում:
    Վարզորի գրածը խորհուրդ չեմ տա փորձեք հասկանալ, որովհետև սկսնակի համար շատ բարդ է ու մի փոքր ավելին պետք է իմանաք, քան ծրագրավորումը:
    Իսկ իրականում Վարզորինը շա՜տ ավելի օրիգինալ ու օպտիմալ լուծում է

    Հ.Գ. ես խնդրագիրք ունեմ (scan արած), Պոլիտեխնիկի ВТ-ում դրանով ենք անցնում, եթե ուզում եք, կարող եմ ուղարկել:

  5. #200
    Կեցցե թագավորը Varzor-ի ավատար
    Գրանցման ամսաթիվ
    16.03.2009
    Հասցե
    Երկիր մոլորակ, ՀՀ ք. Երևան
    Տարիք
    43
    Գրառումներ
    7,503
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)
    Մեջբերում armen9494-ի խոսքերից Նայել գրառումը
    Պարզ ա, իսկ մյուս թվերի համար կարո՞ղ եմ C++-ով գրել նման ծրագիր, թե՞ միայն կարողանում է թիվը երկուական դարձնել:
    itoa պրոցեդուրան ընդունում է արժեքներ 2-ից մինչև 32 միջակայքում
    Առանց մեծ ջանքերի կարելի է գրել ֆունկցիա, որը կվերադարձնի տրված թբի այս կամ այն համակարգով արտահայտումը: Բնական է, որ այդ համակարգերի քանակը պիտի սահմանափակ լինի, քանի որ տարբեր համակարգերում թվերի արտահայտման սիմվոլային բազմությունը կարող է յուրահատուկ լինել: Օրինակ` 16-ականում 9 թվից հետո սկսում են A-F սիմվոլները: Ըստ էության կարելի է գրել մինչև 36-ականների համար` 0-9 թվանշանները, ավելացված A-Z լատինական այբուբենի 26 սիմվոլները
    Վերջին խմբագրող՝ Varzor: 20.02.2012, 20:25:
    Լոխ մունք ենք, մնացածը` լոխ են...

  6. Գրառմանը 1 հոգի շնորհակալություն է հայտնել.

    armen9494 (20.02.2012)

  7. #201
    Լիարժեք անդամ Ruzanna Stepanyan-ի ավատար
    Գրանցման ամսաթիվ
    11.02.2012
    Գրառումներ
    81
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Շնորհակալ եմ անչափ: Հասկացա վերջապես

  8. #202
    Լիարժեք անդամ Ruzanna Stepanyan-ի ավատար
    Գրանցման ամսաթիվ
    11.02.2012
    Գրառումներ
    81
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Մեջբերում armen9494-ի խոսքերից Նայել գրառումը
    Կասե՞ք, թե գրածիս որ մասը կոնկրետ հասկանալի չի, կարծում եմ էդ դեպքում ձեզ էլ ավելի հեշտ կլինի հասկանալ՝ կիմանաք, թե կոնկրետ որտեղ եք թերանում:
    Վարզորի գրածը խորհուրդ չեմ տա փորձեք հասկանալ, որովհետև սկսնակի համար շատ բարդ է ու մի փոքր ավելին պետք է իմանաք, քան ծրագրավորումը:
    Իսկ իրականում Վարզորինը շա՜տ ավելի օրիգինալ ու օպտիմալ լուծում է

    Հ.Գ. ես խնդրագիրք ունեմ (scan արած), Պոլիտեխնիկի ВТ-ում դրանով ենք անցնում, եթե ուզում եք, կարող եմ ուղարկել:
    Արմեն ջան եթե դժվար չի կուղարկես իմ mail-ին. [email protected]

  9. #203
    Պատվավոր անդամ armen9494-ի ավատար
    Գրանցման ամսաթիվ
    01.03.2010
    Տարիք
    31
    Գրառումներ
    1,242
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Վարզոր ախպեր մի բան ասեմ, չզարմանաս
    Մենք երեկ խի՞ էինք էդքան խառնվել իրար՝ տո ցիկլով լուծում, տո երկուական կոդ, երեքական կոդ
    Էսօր մեր տղեքից մեկին էս խնդիրը ասեցի, ընենց բան ասեց՝ աչքերս քյալիս էր թռել
    Մի յուրահատուկ բան, որի անունն է լոգարիթմ
    Էս էլ խնդիրը՝
    էս դեպքում 2-ի k աստիճանի համար

    #include <iostream.h>
    #include <math.h>

    void main ()
    {
    int x;
    cin>>x;
    cout<<(log(x)/log(2));
    }
    իսկ էս դեպքում ընդհանրապես y-ի k աստիճանի համար

    #include <iostream.h>
    #include <math.h>

    void main ()
    {
    int x,y;
    cin>>x;
    cin>>y;
    cout<<(log(x)/log(y));
    }
    Ռուզան, եթե լուծումը ձեզ հետաքրքրեց, կարող եմ բացատրել, թե ինչ եմ արել: Իրոք որ էս եղանակը շատ պարզ ու բոլորի համար հասկանալի է (եթե իհարկե գիտենք լոգարիթմ)
    Վերջին խմբագրող՝ armen9494: 21.02.2012, 23:39:

  10. Գրառմանը 2 հոգի շնորհակալություն են հայտնել.

    Varzor (22.02.2012), Աթեիստ (21.02.2012)

  11. #204
    Կեցցե թագավորը Varzor-ի ավատար
    Գրանցման ամսաթիվ
    16.03.2009
    Հասցե
    Երկիր մոլորակ, ՀՀ ք. Երևան
    Տարիք
    43
    Գրառումներ
    7,503
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)
    Մեջբերում armen9494-ի խոսքերից Նայել գրառումը
    Վարզոր ախպեր մի բան ասեմ, չզարմանաս
    Մենք երեկ խի՞ էինք էդքան խառնվել իրար՝ տո ցիկլով լուծում, տո երկուական կոդ, երեքական կոդ
    Էսօր մեր տղեքից մեկին էս խնդիրը ասեցի, ընենց բան ասեց՝ աչքերս քյալիս էր թռել
    Մի յուրահատուկ բան, որի անունն է լոգարիթմ
    Էս էլ խնդիրը՝
    էս դեպքում 2-ի k աստիճանի համար
    Դա ամենակարճ լուծումն է զուտ գրելու տեսանկյունից: Իսկ 2-ական կոդով արտահայտումը պրոցեսորայյին տակտերի տեսանկյունից ամենակարճն է, ընդ որում` մասնավոր, կոնկրետ այդ դեպքի համար: Պատճառը հասկանալի է` թվերը երկուականով են պահվում հիշողությունում:
    Ու ընդհանրապես մենակ ցիկլերով այդ խնդիրը լուծելու բազմաթիվ տարբերակներ կան` նվազող բաժանումով, աճողական բազմապատկումով, pow-ի միջոցով և այլն:
    Այսպիսի խնդիրներն էլ հենց կոչված են ծրագրավորողի մտքի ճկունությունը և ծրագրավորման լեզվի իմացությունը ստուգելու համար:
    Լոխ մունք ենք, մնացածը` լոխ են...

  12. Գրառմանը 1 հոգի շնորհակալություն է հայտնել.

    armen9494 (22.02.2012)

  13. #205
    Լիարժեք անդամ Ruzanna Stepanyan-ի ավատար
    Գրանցման ամսաթիվ
    11.02.2012
    Գրառումներ
    81
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Արմեն ջան, լուծումը շատ հետաքրքրեց, լոգարիթմ իհարկե գիտեմ:

    Մեջբերում armen9494-ի խոսքերից Նայել գրառումը
    Վարզոր ախպեր մի բան ասեմ, չզարմանաս
    Մենք երեկ խի՞ էինք էդքան խառնվել իրար՝ տո ցիկլով լուծում, տո երկուական կոդ, երեքական կոդ
    Էսօր մեր տղեքից մեկին էս խնդիրը ասեցի, ընենց բան ասեց՝ աչքերս քյալիս էր թռել
    Մի յուրահատուկ բան, որի անունն է լոգարիթմ
    Էս էլ խնդիրը՝
    էս դեպքում 2-ի k աստիճանի համար



    իսկ էս դեպքում ընդհանրապես y-ի k աստիճանի համար



    Ռուզան, եթե լուծումը ձեզ հետաքրքրեց, կարող եմ բացատրել, թե ինչ եմ արել: Իրոք որ էս եղանակը շատ պարզ ու բոլորի համար հասկանալի է (եթե իհարկե գիտենք լոգարիթմ)

  14. #206
    Պատվավոր անդամ armen9494-ի ավատար
    Գրանցման ամսաթիվ
    01.03.2010
    Տարիք
    31
    Գրառումներ
    1,242
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Մեջբերում Ruzanna Stepanyan-ի խոսքերից Նայել գրառումը
    Արմեն ջան, լուծումը շատ հետաքրքրեց, լոգարիթմ իհարկե գիտեմ:
    Ինչ-որ պահ կա՞ր, որ անհասկանալի էր, եթե այո՝ ասեք, կմանրամասնեմ:

  15. #207
    Լիարժեք անդամ Ruzanna Stepanyan-ի ավատար
    Գրանցման ամսաթիվ
    11.02.2012
    Գրառումներ
    81
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Մեջբերում armen9494-ի խոսքերից Նայել գրառումը
    Ինչ-որ պահ կա՞ր, որ անհասկանալի էր, եթե այո՝ ասեք, կմանրամասնեմ:

    cout<<(log(x)/log(2));


    եթե կարելի է սա մի քիչ մանրամասն կասեք

  16. #208
    Պատվավոր անդամ armen9494-ի ավատար
    Գրանցման ամսաթիվ
    01.03.2010
    Տարիք
    31
    Գրառումներ
    1,242
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Մեջբերում Ruzanna Stepanyan-ի խոսքերից Նայել գրառումը
    cout<<(log(x)/log(2));


    եթե կարելի է սա մի քիչ մանրամասն կասեք
    Լավ:
    cout<<-ը արտածման օպերատոր է:
    Ուրեմն սենց, մեզ ի՞նչ է պետք հաշվել k-ն ստանալու համար՝ log2x (լոգարիթմ 2 հիմքով x)
    C++ լեզվում չկա այնպիսի օպերատոր, որով կարողանանք գրել լոգարիթմ 2 հիմքով x : Կա միայն մի օպերատոր լոգարիթմ հաշվելու համար, որի հիմքը e-ն է՝ log
    Դե մաթեմատիկայից էլ գիտենք, որ՝
    logba = (logca) / (logcb)
    որտեղից էլ log2x=(logex) / (loge2)
    իսկ c++-ում դրա գրելաձևը այսպես է՝ log(x)/log(2)

  17. #209
    Կեցցե թագավորը Varzor-ի ավատար
    Գրանցման ամսաթիվ
    16.03.2009
    Հասցե
    Երկիր մոլորակ, ՀՀ ք. Երևան
    Տարիք
    43
    Գրառումներ
    7,503
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)
    Մեջբերում Ruzanna Stepanyan-ի խոսքերից Նայել գրառումը
    cout<<(log(x)/log(2));
    եթե կարելի է սա մի քիչ մանրամասն կասեք
    C++-ում Log ֆունկցիան բնական` e հիմքով լոգարիթմն է, մաթեմատիկական Ln() ֆունկցիայի համարժեքը:
    Log2x=k, այսինքն k-ն այնպիսի թիվ է, որ 2k=x
    Ըստ լոգարիթմերի կանոնի Logab=Logcb/Logca: Այսինքն կարելի է գրել` Logab=ln b/ln a: Մեր օրինակի դեպքում` Log2=ln x/ln 2=k: հենց այս օրինաչափությունն էլ C++ լեզվով գրվում է (log(x)/log(2));

    Հ.Գ.
    Չեմ կրկնվել, ուղղակի իմ գրելու ընթացքում Արմենն արդեն պատասխանել էր
    Լոխ մունք ենք, մնացածը` լոխ են...

  18. #210
    Պատվավոր անդամ armen9494-ի ավատար
    Գրանցման ամսաթիվ
    01.03.2010
    Տարիք
    31
    Գրառումներ
    1,242
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Մեջբերում Varzor-ի խոսքերից Նայել գրառումը
    Հ.Գ.
    Չեմ կրկնվել, ուղղակի իմ գրելու ընթացքում Արմենն արդեն պատասխանել էր
    մեկս մյուսին հերթ չի տալիս պատասխանելու համար

    Վարզոր ախպեր մի բան հարցնեմ էլի: Մոտս c++-ի վիդեոուռոկներ ունեմ, բայց չեմ կարում ջոկեմ, թե որ վերսիան ա, եթե քեզ առաջին ֆայլը ուղարկեմ (որի մեջ ինստալլյացիան ա երևում, բայց չի երևում ինչ-որ վերսիա), ուղղակի տեսքից կարո՞ղ ես ասել, թե էդ որն ա:
    Վերջին խմբագրող՝ armen9494: 22.02.2012, 17:26:

Էջ 14 36-ից ԱռաջինԱռաջին ... 410111213141516171824 ... ՎերջինըՎերջինը

Թեմայի մասին

Այս թեման նայող անդամներ

Այս պահին թեմայում են 1 հոգի. (0 անդամ և 1 հյուր)

Էջանիշներ

Էջանիշներ

Ձեր իրավունքները բաժնում

  • Դուք չեք կարող նոր թեմաներ ստեղծել
  • Դուք չեք կարող պատասխանել
  • Դուք չեք կարող կցորդներ տեղադրել
  • Դուք չեք կարող խմբագրել ձեր գրառումները
  •