2016-04-16 11 views
-1

誰かが私のコードを修正できますか? これはI Cで入力番号5 ++C++の単純な行列

 
1 
2 6 
3 7 10 
4 8 11 13 
5 9 12 14 15 

私の結果際に示したしなければならない結果である。

 
1 
2 6 
3 7 10 
4 8 11 14 
5 9 12 15 18 

私のコード:

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

void main() 
{ 
    int n,i,j; 
    cout<<"insert number"<<endl; 
    cin>>n; 
    for (i=1;i<=n;i++) 
    { 
     int y=1; 
     int g=1; 
     cout<<i<<"  "; 
     for (j=1;j<=i-1;j++) 
     { 
      int x=n; 
      int b=i; 
      x--; 
      g--; 
      cout<<(x*y)+b+g<<"  "; 
      y++; 
     } 
     cout<<endl; 
    } 
    getch(); 
} 

は私が間違って何をしましたか? 申し訳ありません私のコードが乱雑な私はC + +の新しい学習者です。

+1

ワット?あなたは何をしようとしているのですか?明確にしていただけますか? – ForceBru

+0

私の英語はひどいのですみません、私はすでにそれを編集しています。 – Atika

+0

問題はあなたの英語ではありませんが、目標@Atikaを述べなかったことです。しかし、少なくとも2人のユーザー(私を含む)があなたが望むものを理解し、答えを提供しました。 – gsamaras

答えて

1

あなたは可能性があり、それは次のように:キーポイントは、あなたがすべての数字を印刷したいことを、開始している

#include <iostream> 

using namespace std; 

int main() 
{ 
    int n , i ,j, sum; 
    cout << "masukkan bilanga" << endl; 
    cin >> n; 
    for(i = 0; i < n; i++) 
    { 
     cout << i + 1 << "  "; 
     sum = i + 1; 
     for(j = 0; j < i; j++) 
     { 
      sum += n - 1 - j; 
      cout << sum << "  "; 

     } 
     cout << endl; 
    } 
    return 0; 
} 

列方向に1から、三角形が生成されるまで、三角形が作成される。

出力から駆動すると、次の列のすべての要素が現在の要素であり、さらにn - 1であることが容易にわかります。その要素は、行列の右部分に進むにつれて1ずつ減少します。

+1

ありがとう、これは私が欲しいものです。 ;;; – Atika

+0

あなたは@Atikaようこそ! – gsamaras

-1

これは何が必要であると思います、このコードを試してみてください。

#include <iostream> 
#include <string> 

void printMatrix(int number); 

void main() 
{ 
    int number = 1; 
    std::cout << "Enter a number: "; 
    std::cin >> number; 
    printMatrix(number); 
} 

void printMatrix(int number) { 
    std::cout << std::endl; 
    for (int i = 1; i <= number; i++) { 
     std::cout << i << " "; 
     int n = i; 
     for(int j = 1; j < i; j++) { 
      n += number - j; 
      std::cout << n << " "; 
     } 
     std::cout << std::endl; 
    } 
} 
+0

'ボイドメイン'はダウンボートに値します。 – Danh