学校の課題で下のような結果を出すプログラムをつくりたいのですが、如何せん初心者で手も足も出ません。
助けていただけないでしょうか。
Revise the above program to output the next character to an input alphabetical character. If the input is ’z’ , the program shall return ’A’;
>input a small character = 1
>input a small character = a
>next is = B
>input a small character = 3
>input a small character = b
>next is = C
>input a small character = a
>next is = B
>input a small character = z
>input a small character = A
助けて下さい!
Re: 助けて下さい!
フォーラムルールにありますように、課題の丸投げは禁止されております。asciiさんが出来るところまで提示してください。
学校の課題ということですので、きっと授業があるのでしょう。
Hello Worldプログラムくらいは書けますか?
学校の課題ということですので、きっと授業があるのでしょう。
Hello Worldプログラムくらいは書けますか?
Re: 助けて下さい!
すいません、ルールを読まずに投稿してしまいました。ご放念下さい。ご指摘ありがとうございます。
HelloWorld使ったことはありますが、ないに等しいと考えて下さい。
整数0~99を出すのは、
#include <stdio.h>
int main(){
int i;
for( i=0;i<100; i++){
if(i%2 == 0){
printf("%d\n", i);
}
}
return 0;
}
小文字を入力した時に答えが大文字に変換されるプログラミングを上のに足したらいいのでしょうが、
ネットで探すとtolowrやtouprを使っています。それを使わずに導き出したいのです。
HelloWorld使ったことはありますが、ないに等しいと考えて下さい。
整数0~99を出すのは、
#include <stdio.h>
int main(){
int i;
for( i=0;i<100; i++){
if(i%2 == 0){
printf("%d\n", i);
}
}
return 0;
}
小文字を入力した時に答えが大文字に変換されるプログラミングを上のに足したらいいのでしょうが、
ネットで探すとtolowrやtouprを使っています。それを使わずに導き出したいのです。
- softya(ソフト屋)
- 副管理人
- 記事: 11677
- 登録日時: 14年前
- 住所: 東海地方
- 連絡を取る:
Re: 助けて下さい!
とりあえず、入力をそのまま出力する課題に似たプログラムをまず作ってみましょう。
>input a small character = a
>next is = a
そのまんま出す感じです。
あとcodeタグを使って下さい。フォーラムルールに書いてあります。
http://dixq.net/board/board.html
>input a small character = a
>next is = a
そのまんま出す感じです。
あとcodeタグを使って下さい。フォーラムルールに書いてあります。
http://dixq.net/board/board.html
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。
Re: 助けて下さい!
文字がASCIIコードで表されていると仮定すると、大文字と小文字の変換はアルファベットの文字コードに0x20をxorするとできます。
まず、課題のサンプルの入力と出力を分離してください。
今の状態だと、このプログラムでもいいと解釈できます。
まず、課題のサンプルの入力と出力を分離してください。
今の状態だと、このプログラムでもいいと解釈できます。
Revise the above program to output the next character to an input alphabetical character. If the input is ’z’ , the program shall return ’A’;
>input a small character = 1
>input a small character = a
>next is = B
>input a small character = 3
>input a small character = b
>next is = C
>input a small character = a
>next is = B
>input a small character = z
>input a small character = A
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)
Re: 助けて下さい!
これはabove programがわからないと難しそうですね。
著作権の関係で載せられないかもしれないですが・・・
著作権の関係で載せられないかもしれないですが・・・
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)
Re: 助けて下さい!
above program はこちらになります。
みなさんありがとうございます。
Make a program, which prompts us to input a character and if the character is a small alphabetical character it returns its capital character. Otherwise it prompts again for the input. After 100 times iteration it stops. It works such that
みなさんありがとうございます。
Make a program, which prompts us to input a character and if the character is a small alphabetical character it returns its capital character. Otherwise it prompts again for the input. After 100 times iteration it stops. It works such that
- softya(ソフト屋)
- 副管理人
- 記事: 11677
- 登録日時: 14年前
- 住所: 東海地方
- 連絡を取る:
Re: 助けて下さい!
プログラムじゃなくて、実行結果なのですが間違っていませんか?
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。
Re: 助けて下さい!
現在の課題ができなくてこまっている
→じゃあ一個前の(above program)ならできるのでしょうか?
→できるなら今回のもほとんど大差ないと思うけどわからない点は何でしょう?
→できないなら…学校の課題ということであれば,何かしら教科書みたいなのとかがあると思うのです.
おそらく
>文字がASCIIコードで表されていると仮定すると、大文字と小文字の変換はアルファベットの文字コードに0x20をxorするとできます。
のようなヒント等は事前になにかしらの形で与えられているのではないでしょうか.
関連しそうなあたりを もう一度見返してみてはいかがでしょう.
で,その上で(自己解決しないようであれば),他の方がおっしゃられているように
「ここまではわかるのだが,ここがわからん」ということを具体的に示されるとよいかと思います.
→じゃあ一個前の(above program)ならできるのでしょうか?
→できるなら今回のもほとんど大差ないと思うけどわからない点は何でしょう?
→できないなら…学校の課題ということであれば,何かしら教科書みたいなのとかがあると思うのです.
おそらく
>文字がASCIIコードで表されていると仮定すると、大文字と小文字の変換はアルファベットの文字コードに0x20をxorするとできます。
のようなヒント等は事前になにかしらの形で与えられているのではないでしょうか.
関連しそうなあたりを もう一度見返してみてはいかがでしょう.
で,その上で(自己解決しないようであれば),他の方がおっしゃられているように
「ここまではわかるのだが,ここがわからん」ということを具体的に示されるとよいかと思います.
オフトピック
課題の内容から察するに,かなり初期の段階だと思うのですが,
今後も同じようにプログラミング課題をこなさねばならないような環境におられるのであれば,
何かしらあやふやな点があるならば,この機会に復習してしっかり潰しておくとよいかと.
今なら復習内容量もかなり少なくて済むでしょうし.
今回の課題を無理矢理乗り切ってしまうと,次回の課題ですぐまた行き詰ってしまう可能性が大きいと思いますので.
今後も同じようにプログラミング課題をこなさねばならないような環境におられるのであれば,
何かしらあやふやな点があるならば,この機会に復習してしっかり潰しておくとよいかと.
今なら復習内容量もかなり少なくて済むでしょうし.
今回の課題を無理矢理乗り切ってしまうと,次回の課題ですぐまた行き詰ってしまう可能性が大きいと思いますので.
Re: 助けて下さい!
元のプログラムがどういうものかよくわかりませんが、
こういうことがしたいのでしょうか。
こういうことがしたいのでしょうか。
#include <stdio.h>
#include <ctype.h>
char getNextCapital(char c)
{
return (c == 'z') ? 'A' : c + 'A' - 'a' + 1;
}
int main(void)
{
char c;
while (1) {
do {
printf("input a small character = "), scanf(" %c", &c);
} while (!islower((int) c));
printf("next is = %c\n", getNextCapital(c));
}
return 0;
}