ページ 11

y=x^2のグラフ

Posted: 2020年12月16日(水) 00:48
by 劉578
main関数内でscanf関数にて範囲を入力させて、y=x^2のグラフを完成させるプログラムを作成したいです.xの2乗を計算する関数とグラフを作成する関数 の2つの関数とmain関数からなるプログラムとして完成させようとしたのですが、1行目しか表示されません.アドバイスお願いします。

コード:

#include <stdio.h>

int x,y,c,i;  //グローバル変数
int a(int x);//プロトタイプ宣言
int b(int x);//プロトタイプ宣言

int main(void)
{
	printf("正の整数を入力してください\n");
	fflush(stdout);
	scanf("%d",&c);//キーボードから入力
	a(c);
	b(c);
	return 0;
}

int a(int x)//xを2乗する関数
{
	y=x*x;//xの2乗の計算

	return y;
}

int b(int x)//グラフを作成する関数
{
	for(i=-x;i<=x;i++){
		for(i=1;i<=y;i++){
			printf("*");//y個*を表示
		}
	  printf("\n");
	}
	return y;
}

Re: y=x^2のグラフ

Posted: 2020年12月16日(水) 04:48
by あたっしゅ

コード:

#include <stdio.h>

//int x,y,c,i;  //グローバル変数
int  a(int x);//プロトタイプ宣言
void b(int x);//プロトタイプ宣言

int main(void)
{
    int c;
    
	printf("正の整数を入力してください\n");
	fflush(stdout);
	scanf("%d",&c);//キーボードから入力
	//a(c);
	b(c);

	return 0;
}

int a(int x)//xを2乗する関数
{
	return x*x;//xの2乗の計算;
}

void b(int x)//グラフを作成する関数
{
	for(int i=-x; i<=x; i++){
		for( int j=1; j<=a(i); j++){
			printf("*");//y個*を表示
		}
	    printf("\n");
	}
}


// end.
https://www.onlinegdb.com/ の C++ 17 で確認。

Re: y=x^2のグラフ

Posted: 2020年12月16日(水) 06:51
by Meta3
y を 計算してないことと jを使って2重ループにすること

コード:

#include <stdio.h>

int x,y,c,i;  //グローバル変数
int a(int x);//プロトタイプ宣言
int b(int x);//プロトタイプ宣言

int main(void)
{
	printf("正の整数を入力してください\n");
	fflush(stdout);
	scanf("%d",&c);//キーボードから入力
	a(c);
	b(c);
	return 0;
}

int a(int x)//xを2乗する関数
{
	y=x*x;//xの2乗の計算

	return y;
}

int b(int x)//グラフを作成する関数
{
	int j;
	for(i=-x;i<=x;i++){
		y=a(i);
		for(j=1;j<=y;j++){			
			printf("*");//y個*を表示
		}
	  printf("\n");
	}
	return y;
}

Re: y=x^2のグラフ

Posted: 2020年12月16日(水) 06:58
by Meta3
VisualStudio2019

コード:

c:\b>cl c1.c
Microsoft(R) C/C++ Optimizing Compiler Version 19.28.29335 for x86
Copyright (C) Microsoft Corporation.  All rights reserved.

c1.c
Microsoft (R) Incremental Linker Version 14.28.29335.0
Copyright (C) Microsoft Corporation.  All rights reserved.

/out:c1.exe
c1.obj

c:\b>c1
正の整数を入力してください
5
*************************
****************
*********
****
*

*
****
*********
****************
*************************

c:\b>

Re: y=x^2のグラフ

Posted: 2020年12月16日(水) 09:26
by 劉578
できました。
ありがとうございました!
iとjの二つ必要なの完全に忘れてました。