User Tag List

Էջ 15 36-ից ԱռաջինԱռաջին ... 511121314151617181925 ... ՎերջինըՎերջինը
Ցույց են տրվում 211 համարից մինչև 225 համարի արդյունքները՝ ընդհանուր 536 հատից

Թեմա: C++

  1. #211
    Կեցցե թագավորը Varzor-ի ավատար
    Գրանցման ամսաթիվ
    16.03.2009
    Հասցե
    Երկիր մոլորակ, ՀՀ ք. Երևան
    Տարիք
    43
    Գրառումներ
    7,503
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)
    Մեջբերում armen9494-ի խոսքերից Նայել գրառումը
    մեկս մյուսին հերթ չի տալիս պատասխանելու համար
    Վարզոր ախպեր մի բան հարցնեմ էլի: Մոտս c++-ի վիդեոուռոկներ ունեմ, բայց չեմ կարում ջոկեմ, թե որ վերսիան ա, եթե քեզ առաջին ֆայլը ուղարկեմ (որի մեջ ինստալլյացիան ա երևում, բայց չի երևում ինչ-որ վերսիա), ուղղակի տեսքից կարո՞ղ ես ասել, թե էդ որն ա:
    Դե եթե երևում է` կասեմ: Ուղղակի որոշ տարբերակներ ես չեմ էլ տեղադրել` թռել եմ: Հիմա 2010-ն էմ քաշել, բայց դեռ չեմ դրել:
    Լոխ մունք ենք, մնացածը` լոխ են...

  2. #212
    Պատվավոր անդամ armen9494-ի ավատար
    Գրանցման ամսաթիվ
    01.03.2010
    Տարիք
    31
    Գրառումներ
    1,242
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Մեջբերում Varzor-ի խոսքերից Նայել գրառումը
    Դե եթե երևում է` կասեմ: Ուղղակի որոշ տարբերակներ ես չեմ էլ տեղադրել` թռել եմ: Հիմա 2010-ն էմ քաշել, բայց դեռ չեմ դրել:
    Ուղարկեցի

  3. #213
    Լիարժեք անդամ Ruzanna Stepanyan-ի ավատար
    Գրանցման ամսաթիվ
    11.02.2012
    Գրառումներ
    81
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Շնորհակալ եմ շատ:

    Մի հատ էս խնդիրն էլ նայեք էլի ճիշ տեմ գրել թէ չէ

    Հշավել և արտածել այն բնական թվերի քանակը, որոնց վրա առանց մնացորդի բաժանվում է տրված n բնական թիվը:

    #include <iostream>
    void main ()
    {
    int n,i,qanak;
    cout<<"n=";
    cin>>n;
    i=1;
    qanak=0;
    while (n%i==0)
    {
    i++;
    qanak++;
    }
    cout<<"qanak="<<qanak<<endl;
    }

  4. #214
    Պատվավոր անդամ armen9494-ի ավատար
    Գրանցման ամսաթիվ
    01.03.2010
    Տարիք
    31
    Գրառումներ
    1,242
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Մեջբերում Ruzanna Stepanyan-ի խոսքերից Նայել գրառումը
    Շնորհակալ եմ շատ:

    Մի հատ էս խնդիրն էլ նայեք էլի ճիշ տեմ գրել թէ չէ

    Հշավել և արտածել այն բնական թվերի քանակը, որոնց վրա առանց մնացորդի բաժանվում է տրված n բնական թիվը:

    #include <iostream>
    void main ()
    {
    int n,i,qanak;
    cout<<"n=";
    cin>>n;
    i=1;
    qanak=0;
    while (n%i==0)
    {
    i++;
    qanak++;
    }
    cout<<"qanak="<<qanak<<endl;
    }
    Իմ կարծիքով սխալ է: Մի հարց տամ. խնդրում կարելի՞ է օգտագործել for օպերատորը, թե խնդիրը while-ի համար է:

  5. #215
    Լիարժեք անդամ Ruzanna Stepanyan-ի ավատար
    Գրանցման ամսաթիվ
    11.02.2012
    Գրառումներ
    81
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    հա կարելի է

  6. #216
    Պատվավոր անդամ armen9494-ի ավատար
    Գրանցման ամսաթիվ
    01.03.2010
    Տարիք
    31
    Գրառումներ
    1,242
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Էդ դեպքում առաջարկում եմ հետևյալ ալգորիթմը.
    վերցնում ենք էդ թիվը ու for ցիկլով 1-ով պակասացնելով բաժանում իրեն նախորդող թվերի վրա՝ մինչև 1:
    Ցիկլի մեջ ստուգում ենք տրված պայմանը:

    1. #include <iostream.h>
    2. void main ()
    3. {
    4. int n,i,qanak=0;
    5. cout<<"n=";
    6. cin>>n;
    7. for(i=n-1;i>=1;i--)
    8. if(n%i==0) ++qanak;
    9. cout<<"qanak="<<qanak<<endl;
    10. }
    Բացվում ա ցիկլ, հետևյալ պայմանով՝ քանի դեռ i-ն մեծ է կամ հավասար մեկից, և յուրաքանչյուր թվի համար ստուգվում՝ արդյո՞ք n-ը բաժանվում է այդ թվին, թե ոչ:

  7. #217
    Լիարժեք անդամ Ruzanna Stepanyan-ի ավատար
    Գրանցման ամսաթիվ
    11.02.2012
    Գրառումներ
    81
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Շատ պարզ ու մատչելի Մերսի

  8. #218
    Պատվավոր անդամ armen9494-ի ավատար
    Գրանցման ամսաթիվ
    01.03.2010
    Տարիք
    31
    Գրառումներ
    1,242
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Ժողովուրդ մի քիչ շտապ ա պետք, եթե հնարավոր ա, կօգնե՞ք:
    Գրածս ծրագիրը չեմ բացատրի, որովհետև հարցս էդքնա էլ դրա մասին չի:
    Լավ, գրեմ հարցս, ինքներդ կհասկանաք:
    Նախ լուծածս խնդիրը՝

    1. #include <iostream.h>
    2. void baz(int[][40],int[][40],int[][40],int);
    3. void main()
    4. {
    5. int n,m,j,a[40][40], b[40][40], s[40][40];
    6. do {cout<<"n="; cin>>n;} while(n<1 || n>40);
    7. for( int i=1; i<=n; i++)
    8. for( int j=1; j<=n; j++)
    9. {
    10. a[i][j]=0;
    11. b[i][j]=0;
    12. s[i][j]=0;
    13. }
    14. do {cout<<"m="; cin>>m;} while(m<1);
    15. cout<<"artarceq tver@"<<endl;
    16. for( int k=1; k<=m; k++)
    17. {
    18. cin>>i>>j;
    19. cout<<endl;
    20. a[i][j]=1;
    21. b[i][j]=1;
    22. s[i][j]=1;
    23. }
    24. k=0;
    25. bool t=false;
    26. do
    27. {
    28. for( i=1; i<=n; i++)
    29. for( j=1; j<=n; j++)
    30. if(b[i,j]!=0)
    31. {
    32. t=true;
    33. k++;
    34. break;
    35. }
    36. if(true==t)
    37. break;
    38. if(true==t)
    39. baz(a,b,s,n);
    40. // for( i=1; i<=n; i++)
    41. // for( j=1; j<=n; j++)
    42. // cout<<b[i][j];
    43. } while( true==t);
    44. cout<<k;
    45. for( i=1; i<=n; i++)
    46. {
    47. for( j=1; j<=n; j++)
    48. cout<<s[i][j];
    49. cout<<endl;
    50. }
    51. }
    52. void baz(int a[][40], int b[][40], int s[][40], int n)
    53. {
    54. int c[40][40];
    55. for( int i=1; i<=n; i++)
    56. for( int j=1; j<=n; j++)
    57. {
    58. c[i][j]=0;
    59. for( int k=1; k<=n; k++)
    60. c[i][j]+=a[i][k]*b[k][j];
    61. }
    62. for( i=1; i<=n; i++)
    63. for( int j=1; j<=n; j++)
    64. {
    65. b[i][j]=c[i][j];
    66. s[i][j]+=c[i][j];
    67. }
    68. }
    Լավ, միանգամից էջը մի փակեք, էդքան էլ ահավոր բան չի
    Ուրեմն ծրագրի 20,21,22-րդ տողերում ես ստեղծում եմ a, b և s մատրիցները, որի տարրերը կամ 1 են, կամ 0 (սկզբում (տող 10-12)բոլորը 0 եմ սարքել, իսկ հիմա որը պետք ա 1 եմ դնում):
    Ուրեմն a մատրիցը խնդրի լուծման ընթացքում չի փոփոխվում:
    Խնդրիս մեջ ունեմ baz ֆունկցիան (տող 2-նախատիպ, տող 52-ֆունկցիա):
    Ուրեմն այդ ֆունկցիայի մեջ a մատրիցը բազմապատկվում է b-ով, ստացվում c մատրիցը: Հետո c-ի մեջի եղածը գրվում է b-ի մեջ: Այնուհետև s մատրիցին գումարվում է b մատրիցը:

    Դե ցիկլերս որոշ ժամանակ հետո վերջանում են (այն ժամանակ, երբ b մատրիցի բոլոր տարրերը 0 են դառնում) և ես ուզում եմ տպել ստացված s մատրիցը (տող 45-49), բայց արդյունքում տպում ա էն հին՝ տող 22-րդի արդյունքում ստացածս (կարող եք չստուգել՝ a մատրիցը հաստատ չի):

    Ծրագիրս pascal-ով գրել եմ, չոտկի աշխատում ա, էս ա՝

    1. type matric=array[1..40,1..40] of integer;
    2. var a,b,s:matric;
    3. i,j,n,m,k:integer; t:boolean;
    4. procedure baz(var a,b,s:matric; n:integer);
    5. var i,j,k:integer; c:matric;
    6. begin
    7. for i:=1 to n do
    8. for j:=1 to n do
    9. begin
    10. c[i,j]:=0;
    11. for k:=1 to n do
    12. c[i,j]:=c[i,j]+a[i,k]*b[k,j];
    13. end;
    14. for i:=1 to n do
    15. for j:=1 to n do
    16. begin
    17. b[i,j]:=c[i,j];
    18. s[i,j]:=s[i,j]+b[i,j]
    19. end
    20. end;
    21. begin
    22. repeat
    23. write('n=');
    24. read(n);
    25. writeln;
    26. until(n>1) and (n<=40);
    27. for i:=1 to n do
    28. for j:=1 to n do
    29. begin
    30. a[i,j]:=0;
    31. b[i,j]:=0;
    32. s[i,j]:=0;
    33. end;
    34. repeat
    35. write('m=');
    36. read(m);
    37. writeln;
    38. until(m>1);
    39. write('mutqagreq tver@');
    40. writeln;
    41. for k:=1 to m do
    42. begin
    43. read(i,j);
    44. writeln;
    45. a[i,j]:=1;
    46. b[i,j]:=1;
    47. s[i,j]:=1;
    48. end;
    49. k:=0;
    50. repeat
    51. t:=false;
    52. for i:=1 to n do
    53. begin
    54. for j:=1 to n do
    55. if b[i,j]<>0 then
    56. begin
    57. t:=true;
    58. k:=k+1;
    59. break
    60. end;
    61. if t=true then break
    62. end;
    63. if t=true then
    64. baz(a,b,s,n)
    65. until t=false;
    66. write(k)
    67. end.
    Հ.Գ. Վարզոր ջան քեզ կարող ա ծանոթ լինի, խնդիրը կառավարման հիմունքներից ա
    Հ.Հ.Գ. ի դեպ՝ ես մտածված եմ զանգվածը 1-ին տարրից սկսել արժեքավորելը, կարծում եմ դա ինչ-որ պռոբլեմի առաջ չպիտի բերի
    Վերջին խմբագրող՝ armen9494: 23.02.2012, 22:38:

  9. #219
    Պատվավոր անդամ armen9494-ի ավատար
    Գրանցման ամսաթիվ
    01.03.2010
    Տարիք
    31
    Գրառումներ
    1,242
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Վայ, ներողություն եմ խնդրում, էն վերևի տեղադրածս խնդրի pascal-ի տարբերակը սխալն եմ տեղադրել
    ճիշտը էս ա

    1. uses crt;
    2. type matric=array[1..40,1..40] of integer;
    3. var a,b,s:matric;
    4. i,j,n,m,k:integer; t:boolean;
    5. procedure baz(var a,b,s:matric; n:integer);
    6. var i,j,k:integer; c:matric;
    7. begin
    8. for i:=1 to n do
    9. for j:=1 to n do
    10. begin
    11. c[i,j]:=0;
    12. for k:=1 to n do
    13. c[i,j]:=c[i,j]+a[i,k]*b[k,j];
    14. end;
    15. { readkey; }
    16. for i:=1 to n do
    17. begin
    18. for j:=1 to n do
    19. begin
    20. { write(b[i,j]);}
    21. b[i,j]:=c[i,j];
    22. s[i,j]:=s[i,j]+b[i,j]
    23. end;
    24. { writeln; }
    25. end;
    26. end;
    27. begin
    28. repeat
    29. write('n=');
    30. read(n);
    31. until(n>1) and (n<=40);
    32. for i:=1 to n do
    33. for j:=1 to n do
    34. begin
    35. a[i,j]:=0;
    36. b[i,j]:=0;
    37. s[i,j]:=0;
    38. end;
    39. repeat
    40. write('m=');
    41. read(m);
    42. until(m>1);
    43. write('mutqagreq tver@');
    44. writeln;
    45. for k:=1 to m do
    46. begin
    47. read(i,j);
    48. { writeln;}
    49. a[i,j]:=1;
    50. b[i,j]:=1;
    51. s[i,j]:=1;
    52. end;
    53. k:=0;
    54. repeat
    55. t:=false;
    56. for i:=1 to n do
    57. begin
    58. for j:=1 to n do
    59. if b[i,j]<>0 then
    60. begin
    61. t:=true;
    62. k:=k+1;
    63. break
    64. end;
    65. if t=true then break
    66. end;
    67. if t=true then
    68. baz(a,b,s,n)
    69. until t=false;
    70. writeln('k=',k);
    71. for i:=1 to n do
    72. begin
    73. for j:=1 to n do
    74. write(s[i,j]);
    75. writeln;
    76. end;
    77. readkey;
    78. end.

  10. #220
    Ինժեներ soultaker-ի ավատար
    Գրանցման ամսաթիվ
    13.05.2010
    Գրառումներ
    221
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Տող 30`
    Մեջբերում armen9494-ի խոսքերից Նայել գրառումը
    if(b[i,j]!=0)
    չգիտեմ քո պրոբլեմը ինչիցա, բայց էս մասը ուզեցել ես գրես if(b[i][j]!=0), էն էլ պասկալով ես գրել

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

    armen9494 (24.02.2012)

  12. #221
    Պատվավոր անդամ Ներսես_AM-ի ավատար
    Գրանցման ամսաթիվ
    25.06.2006
    Գրառումներ
    4,303
    Բլոգի գրառումներ
    1
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)
    Արմեն ջան էս վերևում սխալդ թույն սխալ ա:

    Նախախես ասեմ որ C++ համարյա չգիտեմ: Բայց ոնց որ թե գիտեմ ինչումն ա սխալդ: Ուրեմն մեթոդ կանչելուց երկու տարբերակ կա պարամետրեր փոխանցելու: Փոխանցում արժեքով (pass by value) ու փոխանցում ցուցիչով(pass by reference):
    Արժեքով փոխանցում կատարելուց հիշողության մեջ ստեղծվում է փոխանցվողի կրկնօրինակը ու մեթոդի մեջ հետը ինչ ուզում ես արա սկզբնականի վրա չի ազդի քանի որ բոլոր գործողությունները կատարվում են կրկնօրինակի վրա:
    Ցուցիչով փոխանցում կատարելիս փոխանցվում է փոխանցվող պարամետրի ցուցիչը ու բոլոր գործողություննը փոխում են սկզբնականը:

    Օրինակ Պասկալում արվում ա սենց
    procedure baz(var n:integer); //Փոխանցում ցուցիչով
    procedure baz(n:integer); //Փոխանցում արժեքով

    որ սկսեցի գրառումս գրել ասեցի ինտերնետում կնայեմ մի քիչ կգրեմ Սիով ոնց ա, էն էլ հիմա պիտի գնամ: Հնարավոր ա իմ ասածի հետ կապ չունի, որովհետև ոնց ասեցի Սի չգիտեմ:

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

    armen9494 (24.02.2012)

  14. #222
    Պատվավոր անդամ armen9494-ի ավատար
    Գրանցման ամսաթիվ
    01.03.2010
    Տարիք
    31
    Գրառումներ
    1,242
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Ներսես ջան էդքանը հաշվի առել եմ, c++-ում զանգվածը հենց հասցեով էլ փոխանցվում ա ֆունկցիային, դրա համար ուրիշ ոչինչ անել պետք չի, սխալը ըտեղ չի:
    soultaker ջան մերսի, չէի նկատել, ասելուցդ էլ հետո մի 5 րոպե նայում էի ու չէի ջոկում, թե ինչն ա սխալ. Պասկալը նստել ա մեջս
    բա ինչի՞ էր ծրագրիս էդ մասը ճիշտ աշխատում

    Հ.Գ. լավ, էս կարգի անիմաստ սխալ անեմ, որ չկարողանամ գտնեմ
    Վերջին խմբագրող՝ armen9494: 24.02.2012, 11:28:

  15. #223
    Ինժեներ soultaker-ի ավատար
    Գրանցման ամսաթիվ
    13.05.2010
    Գրառումներ
    221
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Մեջբերում armen9494-ի խոսքերից Նայել գրառումը
    բա ինչի՞ էր ծրագրիս էդ մասը ճիշտ աշխատում
    Էտ մասը սինտաքսով ճիշտա համարվում, գրածա`
    if(b[i,j]!=0)

    Սրա մեջ i,j իրենից ներկայացնումա արտահայտություն: Կամայական ստորակետով իրարից բաժանված արժեքների հաջորդականությունը մշակվումա հետևյալ կերպ` հերթով հաշվումա ամեն մասի արժեքը (տվյալ դեպքում i ու j), վերջում արտահայտության ընդհանուր արժեքը լինումա վերջին մասի արժեքը, իսկ մնացած մասերի արժեքները անտեսվում են: Ասենք եթե գրեյիր i+=j,j էտ դեպքում սկզբում մի հատ i-ին կգումարեր j, հետո կվերադարձներ j-ի արժեքը: Այսինքն i,j արժեքով համարժեք է j-ին, ու նույնը կլիներ եթե
    if(b[i,j]!=0)
    փոխարեն գրեյիր
    if(b[j]!=0)

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

    Varzor (24.02.2012)

  17. #224
    Պատվավոր անդամ armen9494-ի ավատար
    Գրանցման ամսաթիվ
    01.03.2010
    Տարիք
    31
    Գրառումներ
    1,242
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Մեջբերում soultaker-ի խոսքերից Նայել գրառումը
    Էտ մասը սինտաքսով ճիշտա համարվում, գրածա`
    if(b[i,j]!=0)

    Սրա մեջ i,j իրենից ներկայացնումա արտահայտություն: Կամայական ստորակետով իրարից բաժանված արժեքների հաջորդականությունը մշակվումա հետևյալ կերպ` հերթով հաշվումա ամեն մասի արժեքը (տվյալ դեպքում i ու j), վերջում արտահայտության ընդհանուր արժեքը լինումա վերջին մասի արժեքը, իսկ մնացած մասերի արժեքները անտեսվում են: Ասենք եթե գրեյիր i+=j,j էտ դեպքում սկզբում մի հատ i-ին կգումարեր j, հետո կվերադարձներ j-ի արժեքը: Այսինքն i,j արժեքով համարժեք է j-ին, ու նույնը կլիներ եթե
    if(b[i,j]!=0)
    փոխարեն գրեյիր
    if(b[j]!=0)
    Այսինքն էս դեպքում ինքը ի՞նչ ա ստուգում, եթե իմ մոտ մատրիցը երկչափ ա՝
    if(b[j]!=0)

  18. #225
    Կեցցե թագավորը Varzor-ի ավատար
    Գրանցման ամսաթիվ
    16.03.2009
    Հասցե
    Երկիր մոլորակ, ՀՀ ք. Երևան
    Տարիք
    43
    Գրառումներ
    7,503
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)
    Մեջբերում armen9494-ի խոսքերից Նայել գրառումը
    Այսինքն էս դեպքում ինքը ի՞նչ ա ստուգում, եթե իմ մոտ մատրիցը երկչափ ա՝
    if(b[j]!=0)
    Ստուգում ա j տողը: Ըստ էության C++-ում երկչափ մատրիցը միաչափ վեկտորների վեկտոր է և թույլ է տալիս միանգամից վեկտորների մակարդակով գործողություններ կատարել:
    Լոխ մունք ենք, մնացածը` լոխ են...

Էջ 15 36-ից ԱռաջինԱռաջին ... 511121314151617181925 ... ՎերջինըՎերջինը

Թեմայի մասին

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

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

Էջանիշներ

Էջանիշներ

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

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