はじめてC言語で描いた円の図。
コンピュータ画面への出力は難しいので数値をエクセルに書き出して作図した。
とりあえず円を描けるようになるのが目標だったので初級はクリアした。
さてこれが何の役にたつのか訊かれると返事に困るけど、
まあ、趣味です。
C言語ではプログラムのことをプロジェクトというらしい。
プログラムの中身はこんな感じです。
>>>>>>>>>>>>>>>>>>>>>>>>>>>>
/*円の座標をエクセルに出力する*/
/* 半径はr,中心の座標は(r、r)とする*/
#include
#include
#include
int main(void)
{
/*======================================== 使用する数値の性質の定義*/
double x,y,xc,yc,z;
double r;
double dt = 0.01;/* x軸の増加分*/
/*======================================== ファイルの準備*/
char str[256];/*出力するファイルの名前の定義*/
char str1[32] ;/*名前1の定義*/
char str2[6] = ".xls"; /*拡張子の定義*/
printf("**円周カーブをエクセルにxlsとして出力するプロジェクト**\n\n");
printf("Excelへのファイル名を入力してください...");
scanf("%s",&str1); /*ファイル名の入力*/
sprintf(str,"%s%s",str1,str2); /*名前の合成*/
printf("\nファイル名は%sです\n",str);
/*==================== 書き出す数値の設定と計算と出力*/
printf("半径の入力....");
scanf("%lf",&r);/*半径の入力*/
printf("半径%f",r);
xc = r;/*中心のx座標*/
yc = r;/*中心のy座標*/
printf("中心の座標(x、y)>>>");
scanf("%lf%lf",&xc,&yc);
FILE *p;
p = fopen(str,"w");
if(p == NULL){
printf("cannot open file.xls\n");
getchar();
exit(1);
}
for ( x=0;x <= r *2; x = x+dt){
printf("%f\n",x);
y = sqrt(pow(r,2)-pow*1 +r; /*上半分の円周上のy座標*/
z = (0 - sqrt(pow(r,2)-pow((x-r),2)))+r; /*下半分円周上のy座標*/
fprintf(p,"%f\n",y);
fprintf(p,"%f\n",z);
}
fclose(p);
/*======================================= 終了の手続き*/
printf("_____________________________________________________________\n");
printf("\n Excelに円周カーブのファイル(file.xls)を書き出しました。\n\n\n");
printf("_____________________________________________________________\n\n");
printf("\n Excel内で円を作図してください。\n\n");
printf("_____________________________________________________________\n\n");
getchar();
return 0;
}
なぜか、コピペしたようには表示されない。不思議だな(*1の注が自動的につけられた。安全対策だろうか?、このままCにコピーしてもこの部分を修正しないと動かない)
*1:x-r),2