C言語で正弦波パターンの鏡像を出力する方法
プログラムの概要
正弦波(サイン波)とは、滑らかな周期的な振動を表す数学的な曲線です。正弦波は連続的な波であり、その名前は「正弦(サイン)」関数に由来し、まさにその関数のグラフそのものです。正弦波は純粋数学や応用数学だけでなく、物理学、工学、信号処理など、幅広い分野で頻繁に登場します。
本記事では、波の高さ(Wave Height)と波の長さ(Wave Length)を入力として受け取り、それに基づいて正弦波パターンの鏡像をコンソール上に出力するC言語プログラムを紹介します。
アルゴリズム
このプログラムの処理手順は以下の通りです。
1. ユーザーから波の高さと波の長さを入力として受け取ります。
2. 二重ループと条件判定を用いて、波の高さ・波の長さに対応した位置に波形記号(^^)を出力します。
サンプルコード
/* 正弦波の鏡像を出力するプログラム */
#include<stdio.h>
int main(){
int wave_height;
int wave_length;
int i,j,k;
clrscr(); /* 画面をクリア */
printf("Please enter the wave height of Sign Wave: ");
scanf("%d", &wave_height);
printf("\n");
printf("Please enter the wave length of Sign Wave: ");
scanf("%d", &wave_length);
printf("\n");
for(i = 1; i <= wave_height; i++) {
for(j = 1; j <= wave_length; j++){
for(k = 1; k <= wave_height; k++) {
if(i == k || i + k == wave_height + 1) {
printf("^^");
}
else {
printf(" "" ");
}
}
}
printf("\n");
}
getch();
return 0;
}
コードのポイント
外側のループ(変数 i)が行(縦方向の波の高さ)を制御し、内側のループ(変数 j)が波の長さ分の繰り返しを、さらにその内側のループ(変数 k)が各行における記号の表示位置を制御しています。条件式 i == k || i + k == wave_height + 1 により、対角線上の位置にだけ「^^」が表示され、これによって正弦波の鏡像パターンが形成されます。
出力結果


-
Excelで背景画像を印刷する方法|透かしとして使うテクニックも解説
Excelの標準機能である「背景」から画像を挿入した場合、その背景画像は印刷されません。画面上では表示されていても、いざ印刷しようとすると画像が消えてしまうのです。背景画像付きのExcelシートを印刷したい場合は、画像を別の方法で挿入する必要があります。この記事では、Office 365、Excel 2019、Excel 2016のユーザー向けに、背景画像を正しく印刷する手順を詳しく解説します。 通常の「背景」機能では印刷できない理由 デフォルトの操作では、ページレイアウトタブにある背景ボタンをクリックすることで、シートに画像を設定できます。しかし、この方法はあくまで画面表示用のもので、ファイ
-
Macで左右反転した画像・テキストをミラー印刷する方法
Macユーザーの中には、鏡に映したように左右反転させた画像(ミラーイメージ)や文書を印刷したい方も多いはずです。ミラーイメージとは、元のコンテンツ全体を左右反転させたコピーのことで、アイロン転写シートなどを使う場面で特に役立ちます。この記事では、Macでミラー印刷を行う具体的な手順をわかりやすく解説します。※本記事で紹介する方法は、Mac OS X 10.3以降で動作することを確認済みです。画像をミラー印刷する方法プレビュー(Preview)アプリで、ミラー印刷したい画像を開きます。(画像を右クリック → 「このアプリケーションで開く」→「プレビュー」を選択)プレビュー上部の「ツール」メニュー