整数の合同

提供:kuhalaboWiki
2021年3月12日 (金) 06:47時点におけるKuha (トーク | 投稿記録)による版

移動: 案内, 検索

演算表

加法表の書き出し
nt mod = 5;  //法とする自然数
size(500, 500);
float scalar = (float) width / mod; //拡大比率
for (int i = 0; i < mod; i++){
  for (int j = 0; j < mod; j++){
    int num = (i + j) % mod;  //数の計算
    PVector v = new PVector(j, i);  //マスの位置
    v.mult(scalar);
    fill(255);  //マスを白くする
    rect(v.x, v.y, scalar, scalar); //マスの描画
    fill(0);  //数字を黒くする
    textSize(scalar);
    text(num, v.x, v.y + scalar);  //数字の表示
  }
}
乗法表の書き出し
nt mod = 5;  //法とする自然数
size(500, 500);
float scalar = (float) width / mod; //拡大比率
for (int i = 0; i < mod; i++){
  for (int j = 0; j < mod; j++){
    int num = (i * j) % mod;  //乗法表の場合
    PVector v = new PVector(j, i);  //マスの位置
    v.mult(scalar);
    fill(255);  //マスを白くする
    rect(v.x, v.y, scalar, scalar); //マスの描画
    fill(0);  //数字を黒くする
    textSize(scalar);
    text(num, v.x, v.y + scalar);  //数字の表示
  }
}


べき乗法表の書き出し
int mod = 7;
size(500, 500);
float scalar = (float) width / (mod - 1);
int num;
for (int i = 1; i < mod; i++){
  num = i;  //iの1乗
  for (int j = 1; j < mod; j++){
    PVector v = new PVector(j - 1, i - 1);  //マスの位置
    v.mult(scalar);
    fill(255);
    rect(v.x, v.y, scalar, scalar); //マスを描画
    fill(0);
    textSize(scalar);
    text(num, v.x, v.y + scalar); //iのj乗をマスに表示
    num = (num * i) % mod;  //numをiの(j+1)乗に更新
  }
}

個人用ツール
名前空間

変種
操作
案内
ツールボックス