配列を特定の三角形に印刷するにはどうすればよいですか?

aamHimel

私は10個の要素の配列を持っています{a, b, c, d, e, f, g, h, i, j}私はそれをこのように印刷したい:

a   
be 
cfh 
dgij

最初の列は、配列の最初の4つの値で構成されていることに注意してください。2番目の列(行2から開始)は、配列の次の3つの値で構成されます。

私のコードを以下に示します

#include <stdio.h>

#define size 10

int main() {
  int arr[size] = {14, 22, 34, 57, 44, 42, 33, 55, 48, 47};
  int i, j, n, c, maxTemp;
  n = 4;
  maxTemp = 1;
  c = n - 1;

  for (i = 0; i < n; i++) {
    for (j = i; j < maxTemp; j = j + c) {
      printf("%d ", arr[j]);
    }
    if (maxTemp <= size) {
      maxTemp = maxTemp + c + 1;
    }
    printf("\n");
  }
  return 0;
}

アレイの場合

int arr[size] = {14, 22, 34, 57, 44, 42, 33, 55, 48, 47};

期待していた

14   
22 44    
34 42 55   
57 33 48 47  

しかし得た:

14   
22 44   
34 42 48    
57 33 47 13  

ここでは、の値を1つ減らしたかったので、変数のc値が減っていないために、これが発生している可能性があります私は試しましたが、理解できませんでした。
c

ユンノシュ

必要なインデックスを見てみましょう。

0
1 4
2 5 7
3 6 8 9

空のスペースを線形の数字で埋めます(後で印刷しません)

0 (3  5  6)
1  4 (6  7)
2  5  7 (8)
3  6  8  9

インデックスは、必要なパターンに従って、列を介して上昇します。
これにより、との線形関係が得られますi。つまり、インデックスはi + ...パーツを呼び出して計算されます

各列(「()」内の入力値を含む)は、前の列の最後の数値よりも高い値で始まり、多かれ少なかれnだけ高くなります。
ただし、最初の空の(塗りつぶされた)行と一致させるために、下から開始します(つまり、前の列の値の一部を使用します)。
これにより、との線形関係が得られます。j*nつまり、が存在します... + j*n

試してみましょう。ここにインデックスがありますi+j*n

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

これらは高すぎます。
各行で0、1、3、6ずつですたとえば、最後の行を見てください
3-0==3 7-1==6 11-3==8 15-6==9

それはj*(j+1)/2です。
ちなみに自分では見つけられなかったので、お気に入りの検索エンジンで文字通り「0、1、3、6」を検索しました。そしてこれがポップアップしました:https
//www.mathsisfun.com/algebra/triangular-numbers.html

それをまとめると、正しいインデックスは次のとおりです。

i+j*n - j*(j+1)/2 

コード内:

#include<stdio.h>
#define size 10

int main(void) {
  int arr[size] = {14, 22, 34, 57, 44, 42, 33, 55, 48, 47};
  int i, j, n=4;
  for (i = 0; i < n; i++)
  {
    for (j = 0; j < i+1; j++)
    {
      printf("%d ", i+j*n - j*(j+1)/2 );
    }
    printf("\n");
  }
  return 0;
}

出力:

0
1 4
2 5 7
3 6 8 9

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

2の累乗を三角形で印刷するにはどうすればよいですか?

分類Dev

特定の範囲で周囲長と直角三角形の数を印刷するにはどうすればよいですか?

分類Dev

三角形の配列を外に出して使用できるようにするにはどうすればよいですか

分類Dev

三角形の内側に境界線を作成するにはどうすればよいですか?

分類Dev

下部に全幅の三角形を作成するにはどうすればよいですか?

分類Dev

下の三角形だけをggpairsで表示するにはどうすればよいですか?

分類Dev

三角形の頂点を記述するためのnumpy配列を作成するにはどうすればよいですか?

分類Dev

三角形のQWidgetを作成するにはどうすればよいですか?

分類Dev

三角形の位置を計算して作成するにはどうすればよいですか?

分類Dev

正三角形の座標を計算するにはどうすればよいですか?

分類Dev

正三角形の座標を計算するにはどうすればよいですか?

分類Dev

パスカルの三角形を印刷するようにプログラムを変更するにはどうすればよいですか?

分類Dev

このコードに追加して、arduinoで完全な三角形を印刷するにはどうすればよいですか?

分類Dev

台形を印刷するためにJavaで三角形を回転、インデント、描画するにはどうすればよいですか?

分類Dev

線形勾配から必要なサイズの三角形を作成するにはどうすればよいですか?

分類Dev

UWPで三角形ボタンを実行するにはどうすればよいですか?

分類Dev

この三角形の文字を正しく印刷するにはどうすればよいですか?

分類Dev

PL / SQLを使用して星の三角形を印刷するにはどうすればよいですか。

分類Dev

JavaFXを使用して三角形を作成するにはどうすればよいですか?

分類Dev

6つの三角形のSCNNodeで六角形を作成するにはどうすればよいですか?

分類Dev

6つの三角形のSCNNodeで六角形を作成するにはどうすればよいですか?

分類Dev

6つの三角形のSCNNodeで六角形を作成するにはどうすればよいですか?

分類Dev

6つの三角形のSCNNodeで六角形を作成するにはどうすればよいですか?

分類Dev

四角形の数学的な三角形の角度を固定するにはどうすればよいですか?

分類Dev

OpenGLで三角形を回転させるにはどうすればよいですか?

分類Dev

UIViewで特定の角度でオープンエンドの三角形を描画するにはどうすればよいですか?

分類Dev

Numpy Pythonで4次元配列の下三角形を上三角形にコピーするにはどうすればよいですか?

分類Dev

WPFToolkitのDataPointStyleを円形から正方形、三角形などに変更するにはどうすればよいですか?

分類Dev

対角線上にある2つのcss不等辺三角形の間の線を削除するにはどうすればよいですか?

Related 関連記事

  1. 1

    2の累乗を三角形で印刷するにはどうすればよいですか?

  2. 2

    特定の範囲で周囲長と直角三角形の数を印刷するにはどうすればよいですか?

  3. 3

    三角形の配列を外に出して使用できるようにするにはどうすればよいですか

  4. 4

    三角形の内側に境界線を作成するにはどうすればよいですか?

  5. 5

    下部に全幅の三角形を作成するにはどうすればよいですか?

  6. 6

    下の三角形だけをggpairsで表示するにはどうすればよいですか?

  7. 7

    三角形の頂点を記述するためのnumpy配列を作成するにはどうすればよいですか?

  8. 8

    三角形のQWidgetを作成するにはどうすればよいですか?

  9. 9

    三角形の位置を計算して作成するにはどうすればよいですか?

  10. 10

    正三角形の座標を計算するにはどうすればよいですか?

  11. 11

    正三角形の座標を計算するにはどうすればよいですか?

  12. 12

    パスカルの三角形を印刷するようにプログラムを変更するにはどうすればよいですか?

  13. 13

    このコードに追加して、arduinoで完全な三角形を印刷するにはどうすればよいですか?

  14. 14

    台形を印刷するためにJavaで三角形を回転、インデント、描画するにはどうすればよいですか?

  15. 15

    線形勾配から必要なサイズの三角形を作成するにはどうすればよいですか?

  16. 16

    UWPで三角形ボタンを実行するにはどうすればよいですか?

  17. 17

    この三角形の文字を正しく印刷するにはどうすればよいですか?

  18. 18

    PL / SQLを使用して星の三角形を印刷するにはどうすればよいですか。

  19. 19

    JavaFXを使用して三角形を作成するにはどうすればよいですか?

  20. 20

    6つの三角形のSCNNodeで六角形を作成するにはどうすればよいですか?

  21. 21

    6つの三角形のSCNNodeで六角形を作成するにはどうすればよいですか?

  22. 22

    6つの三角形のSCNNodeで六角形を作成するにはどうすればよいですか?

  23. 23

    6つの三角形のSCNNodeで六角形を作成するにはどうすればよいですか?

  24. 24

    四角形の数学的な三角形の角度を固定するにはどうすればよいですか?

  25. 25

    OpenGLで三角形を回転させるにはどうすればよいですか?

  26. 26

    UIViewで特定の角度でオープンエンドの三角形を描画するにはどうすればよいですか?

  27. 27

    Numpy Pythonで4次元配列の下三角形を上三角形にコピーするにはどうすればよいですか?

  28. 28

    WPFToolkitのDataPointStyleを円形から正方形、三角形などに変更するにはどうすればよいですか?

  29. 29

    対角線上にある2つのcss不等辺三角形の間の線を削除するにはどうすればよいですか?

ホットタグ

アーカイブ