C言語関係掲示板

過去ログ

No.305.隣リ合う2数の差が、1,2,3,4‥と増えていく数字の並び

[戻る] [ホームページ]

No.1822

北情大試験問題!!
投稿者---C#(2002/06/26 16:25:50)


最初の値が1であり、隣リ合う2数の差が、1,2,3,4、‥と増えていく数字の並び1,2,4,7,11、16‥を出力するプログラムをつくりなさい。出力の上限値はキーボードから受け取り、1から順に、その上限以下の値までを出力しなさい。受け取った上限値が1未満の場合には何も出力しないものとする。

No.1830

Re:北情大試験問題!!
投稿者---ななし(2002/06/26 23:05:01)


>最初の値が1であり、隣リ合う2数の差が、1,2,3,4、‥と増えていく数字の並び1,2,4,7,11、16‥を出力するプログラムをつくりなさい。出力の上限値はキーボードから受け取り、1から順に、その上限以下の値までを出力しなさい。受け取った上限値が1未満の場合には何も出力しないものとする。

放置でいいよね!

No.1832

どんな模範解答を頂けるか楽しみです。
投稿者---C#(2002/06/26 23:47:53)


>放置でいいよね!
でもせっかくだから解答頂ければ、これからC言語の勉強の参考に役立てたいです。私はこの問題は、1,2,3‥と差が出る処が味噌だと思いますがいかがですか?

No.1836

Re:どんな模範解答を頂けるか楽しみです。
投稿者---TOM(2002/06/27 00:48:57)


#include <stdio.h>
void main()
{
        int i,In,Sum=1,Up=0;            
        printf("上限入力\n");
        scanf("%d",&In);                           //上限値の入力
        if(In>1)
        {
                for(i=0;Sum<=In;i++)
                {
                        printf("%4d",Sum);      
                        Up++;              //増分の変数に1を加える
                        Sum+=Up;                   //合計に増分を足す	
                }
        }
        else
        {
                printf("1以下の数値が入力されました");
        }
        printf("\n");
}

今、勉強のためにつくってみましたがこんな感じでいいのかな?
後、間違いがあったら指摘よろしくお願いします。


No.1839

動かない理由は何だろう?
投稿者---とら(2002/06/27 02:20:12)


><pre>#include&nbsp;<stdio.h>
void&nbsp;main()
{
int&nbsp;i,In,Sum=1,Up=0;
printf("上限入力\n");
scanf("%d",&In);    <em>//上限値の入力</em>
if(In>1)
{
for(i=0;Sum<=In;i++)
{
printf("%4d",Sum);
Up++;    <em>//増分の変数に1を加える</em>
Sum+=Up;    <em>//合計に増分を足す </em>
}
}
else
{
printf("1以下の数値が入力されました");
}
printf("\n");
}</pre>
>今、勉強のためにつくってみましたがこんな感じでいいのかな?
>後、間違いがあったら指摘よろしくお願いします。



No.1857

Re:動かない理由は何だろう?
投稿者---TOM(2002/06/27 20:56:50)


HTMLに変換したままでは?


No.1858

Re:動かない理由は何だろう?
投稿者---ともじ(2002/06/27 21:13:33)


どうやらソースに全角が入っているようですね。
それを取ったらきちんと動きました。



No.1905

Re:北情大試験問題!!
投稿者---べっく。(2002/07/02 13:01:57)


いまさらながら作ってみました。

#include <stdio.h>

int main ( void )
{
int Max;
int Ans = 1;
int Cnt = 1;

printf ( "上限となる整数値を入力して下さい -> " );
scanf ( "%d", &Max );

while ( Ans <= Max )
{
printf ( "%d\n", Ans );
Ans = Ans + Cnt;
Cnt++;
}
return 0;
}

こんな感じで良いのでしょうか?