C/C++の宿題を片付け ..
[2ch|▼Menu]
705:デフォルトの名無しさん
07/07/23 02:27:40
>>704

#include <stdio.h>
int scan_ascii(){
int c1,c2;
printf("2桁の16進数('41'〜'49'、 '50'〜'59')を入力してください:");
scanf("%c%c", &c1, &c2);
return (c1<<4 + c2);
}
int print_ascii(int c){
printf("文字コード「%d」文字は「%c」です。\n", c, c);
}
int main(){
print_ascii(scan_ascii());
return 0;
}

706:デフォルトの名無しさん
07/07/23 02:34:50
すいません、returnとasciiは習ってないです・・・
でもありがとうございます!1原型ができました

707:デフォルトの名無しさん
07/07/23 02:40:08
>>702
URLリンク(kansai2channeler.hp.infoseek.co.jp)

708:707
07/07/23 02:42:00
アンカー間違えた
>>702 じゃなくて >>701 だった

709:デフォルトの名無しさん
07/07/23 03:09:46
>>420
まだ全然わからないんでお願いします

710:デフォルトの名無しさん
07/07/23 03:28:43
\n    n番目に表れた\(...\)の中の文字列にマッチ (nは1から9の整数)

が意味わからね
方針として入力文字列を"トークン"列に変換してから置換処理がクレバーじゃね?
struct toknの設計がつぼおおおぉおおおおぉおぉおぉおおおおおおおおおおおあおあさだおssd

711:デフォルトの名無しさん
07/07/23 03:44:20
\nの前の正規表現を\( \)で囲っておくとあとで呼び出せるってやつです
Wikipedia項目リンク

\([asdf]\)\(fty\)\([frty]\)\(t\)\3

aftytterをチェックした場合
\3はtと同じです

system()からsed呼び出して同じ動作するものは作れたんですけど、それだと題意にあわないんで・・・

712:デフォルトの名無しさん
07/07/23 10:36:35
>>530
返事が遅くなってすいません。>>530に書いてあるものを使ってpop,pushを使い
たいです。+-*/は数字の大きさで表したいです

713:デフォルトの名無しさん
07/07/23 11:05:05
[1]授業単元:プログラミング技術III
[2]問題文:URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
 [3.1] OS: Linux
 [3.2] コンパイラ: gcc
 [3.3] 言語: C
[4] 期限:7/24まで
[5]その他の制限:特になし

よろしくお願いします

714:デフォルトの名無しさん
07/07/23 11:12:26
>>712は、自分が書いた文を自分で理解できるのか?


715:デフォルトの名無しさん
07/07/23 11:51:28
\(\(c\)b\)d\) の場合"2"番目は何を意味する?
\([ab]\)\1の場合
aa と bb にはマッチするが ab にはマッチしないと理解して良いのか?
(否なら単に[ab][ab]と記述すればいいしなクソ)


それとこれ本当に宿題か?
\nさえなけりゃ理論的な意味の正規表現についての良問だと思うが
\nの性で劇的に難しくなってね?
お前何科の何年生?
あるいは問題間違ってねえ?

716:デフォルトの名無しさん
07/07/23 12:02:40
[1] 授業単元:C++実習
[2] 問題文(含コード&リンク):
URLリンク(kansai2channeler.hp.infoseek.co.jp)
プログラム問題文に沿って作ったものと、それに2つの要素を追加修正した
2つのプログラムの作成をお願いします。

[3] 環境
 [3.1] OS: windows XP
 [3.2] visual studio 2005
 [3.3] 言語: C++
[4] 期限: 2007/07/26 13:00まで
[5] その他の制限: 特に無し

よろしくお願いします

717:デフォルトの名無しさん
07/07/23 12:18:51
\(\)って入れ子にはしないんじゃないか

718:デフォルトの名無しさん
07/07/23 12:25:06
[1] 授業単元:C
[2] 問題文(含コード&リンク):
URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
 [3.1] OS: windows XP
 [3.2] bcc32
 [3.3] 言語: C
[4] 期限: 2007/07/23 13:00まで
[5] その他の制限: 特に無し


719:デフォルトの名無しさん
07/07/23 13:06:20
>>715
問題文には正規表現の各表現の説明があった後に
. * [abc…]、\が使えるようなプログラムを実装せよとかかれてました
ちなみに2回のC初心者向けの演習です
期末レポートなんですが、人によって問題が違って明らかにはずれくじをひいたっぽいですorz

720:デフォルトの名無しさん
07/07/23 13:08:52
あと、正規表現では括弧の入れ子は外から順に数えていくはずです

721:デフォルトの名無しさん
07/07/23 13:54:35
二回で正規表現の実装かよ
Perlとかでならまだしも・・・

722:デフォルトの名無しさん
07/07/23 14:02:30
ほかの人の課題は1時間とかで終わるのもあるんで、\n入れると難易度極端に変わるなら、実はそれ無しかもしれないです

723:デフォルトの名無しさん
07/07/23 14:06:51
出題者は、正規表現の複雑な仕様を完全に実装しろと言っている訳ではないよね。
単純なパターンチェックと置換を実装すればいいんじゃないの?


724:デフォルトの名無しさん
07/07/23 14:09:17
[1] 授業単元:C++
[2] 問題文(含コード&リンク):
 クラスcomplexのメンバ関数で、複素数の絶対値を与える関数を新たに作成せよ。
[3] 環境
 [3.1] OS: Windows
 [3.2] コンパイラ名とバージョン: CC
 [3.3] 言語: C++
[4] 期限: [無期限]
[5] その他の制限: 特になし
 
よろしくおねがいします。


725:デフォルトの名無しさん
07/07/23 14:15:43
>>716
URLリンク(kansai2channeler.hp.infoseek.co.jp)

726:デフォルトの名無しさん
07/07/23 14:16:34
(含コード&リンク):
のくせになんにも貼られてないってどうよ

727:デフォルトの名無しさん
07/07/23 14:26:47
[1] 授業単元:C言語
[2] 問題文(含コード&リンク):正の整数を入力し1からその数までの間に素数がいくつあるのか数えるプログラムを作れ。
[3] 環境
 [3.1] OS:Windows
 [3.2] コンパイラ名とバージョン:VC
 [3.3] 言語:C++
[4] 期限:7月中
[5] その他の制限:特にないです。
よろしくお願いします。


728:デフォルトの名無しさん
07/07/23 14:30:37
[1] 授業単元:C言語
[2] 問題文(含コード&リンク): nを入力してs=1/1-1/3 + 1/5-1/7 + 1/9....+(-1)^n-1/(2n-1)
の和を求めるプログラムを作れ。nが大きくなるにつれてs*4がどうなるか
[3] 環境
 [3.1] OS:Windows
 [3.2] コンパイラ名とバージョン:VC
 [3.3] 言語:C++
[4] 期限:7月中
[5] その他の制限:特にないです。

問題が難しくて困っています。
お願いいたします。


729:デフォルトの名無しさん
07/07/23 14:35:16
double s;
int i,n,j;
printf("n: ");
scanf("%d", &n);
j = 1;
for(i = 0; i < n; i++) {
s += j/(2n-1);
j = -j;
}
printf("s = %lg\n", s);

730:デフォルトの名無しさん
07/07/23 14:57:03
これはひどい

731:デフォルトの名無しさん
07/07/23 14:58:48
#include<stdio.h>
int main(){
double s=0;
int i,n,j=1;
printf("n: ");
scanf("%d", &n);
for(i = 1; i <= n; i++) {
s += (double)j/(2*i-1);
j = -j;
}
printf("s = %lg\n", s*4);
return 0;
}


732:デフォルトの名無しさん
07/07/23 15:33:33
設問的にはcout/cinじゃまいか

733:デフォルトの名無しさん
07/07/23 15:41:51
>>727
おまいのレベルに合わせてコーディングした

#include<stdio.h>
int main(){
while(1){
int i,j,n,c=0;
printf("正数 = ");
scanf("%d",&n);
for(i=2;i<=n;c++,i++)
for(j=2;j<=i/2;j++)
if(i%j==0){
c--;
break;
}
printf("素数 = %d 個\n",c);
}
return 0;
}


734:デフォルトの名無しさん
07/07/23 15:52:57
正規表現のアルゴリズムとか考えたこともなかったな
一度単純な実装見てみたい

735:デフォルトの名無しさん
07/07/23 16:27:02
>>728
#include <iostream>
#include <iomanip>
#include <cmath>

int main()
{
    double s = 0;
    int i, n;
   
    std::cin >> n;
    for(i = 1; i <= n; i++){
        s += pow(-1, i - 1)*1/(2*i - 1);
        std::cout << std::setw(10) << i << " : " << s*4 << std::endl;
    }
   
    return 0;
}

736:デフォルトの名無しさん
07/07/23 17:23:18
>>714
出来ます。+-*/の順に1234とつけて行き大きい数字から(/から)優先
で計算するようにしたいんです。

737:デフォルトの名無しさん
07/07/23 17:53:38
>>736
スタックを2つ作り、数字と演算子を別々に積み上げておいて、演算子はどの数字を計算対象にしたら良いか、分かるのか?

738:デフォルトの名無しさん
07/07/23 18:05:53
>>736
もうちょいで自分でできるぞ
なんかね、道間違えている気がする

739:デフォルトの名無しさん
07/07/23 18:22:04
>>734
URLリンク(www2.starcat.ne.jp)
に単純な実装があるよ。

740:デフォルトの名無しさん
07/07/23 19:12:04
>>725
Test operator = (const Test& t) とかを
Test& operator = (const Test& t) にしないと
return *this が Test(const Test& t) を呼んじまうぜよ

741:ゆみ
07/07/23 19:24:32
超初心者です。制限時間45分で出題されましたが、解答できなかった為持ち帰りになりました(>_<)
どうか御教授お願いします。

・char 型の配列aに"HellowWorld"の文字列を格納すること。
・配列aからchar 型の配列bにデータをコピーすること。
 ※標準関数(memcpy,strcpy等)を使用しないこと。
・配列bからchar 型の配列cにデータをコピーすること。
 ※但し、"w"、"W"は"*"にデータをすりかえてデータをコピーすること。
  →配列cには文字列"Hello**orld"を格納すること。
・printf()で表示する際は、配列cのデータを一文字づつ表示すること。
 ※"o"を表示する際は、"o"を表示する代わりに"O"を5つ表示すること。
・VCのプロジェクト名は"ckadai3"とすること。

742:デフォルトの名無しさん
07/07/23 19:27:52
>>741
ESPの俺が応える
お前男なのにキモイ

743:デフォルトの名無しさん
07/07/23 19:30:51
>>741-742
ESPってなに?

744:デフォルトの名無しさん
07/07/23 19:31:32
>>742
知り合いみたいだからよろしく

745:デフォルトの名無しさん
07/07/23 19:31:36
ESPなら、カキコを阻止してくれよ

746:デフォルトの名無しさん
07/07/23 19:49:57
>>744
マジ?


747:デフォルトの名無しさん
07/07/23 20:06:13
[1] 授業単元:プログラミング
[2] 問題文(含コード&リンク): URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
 [3.1] OS:linux
 [3.2] コンパイラ名とバージョン: gcc 3.4
 [3.3] 言語: (C/C++/どちらでも可 のいずれか)
[4] 期限:2007/07/24
[5] その他の制限:なるべく問題文の指定以外の変更はしないで頂きたいです。どうか宜しくお願いします。


748:デフォルトの名無しさん
07/07/23 20:29:41
>>747
>>294
>>494
>>600

749:741
07/07/23 20:57:04
741です。どなたかお願いします。For文もif文もままならないレベルなので、自力で解くのは厳しいです。また30分後にきます(´〜`;)

750:デフォルトの名無しさん
07/07/23 20:58:46
うざ

751:デフォルトの名無しさん
07/07/23 21:06:14
質問テンプレを利用しましょう。

752:デフォルトの名無しさん
07/07/23 21:08:29
向こうで回答されてなかったっけ

753:デフォルトの名無しさん
07/07/23 21:15:49
>>420
URLリンク(kansai2channeler.hp.infoseek.co.jp)
どう考えても2回の宿題のレベルじゃなくね?
一日かかっちまったわ
完全じゃねえけどな
\(\)は無理,ってか>>719の言い方じゃイラネエじゃんクソ

つーかなに?ほんとはライブラリとか使えんじゃねーのか???
>>420が問題の趣旨を理解していない気が激しくするぞコラ

まあ俺は勉強になったがなクソ

754:デフォルトの名無しさん
07/07/23 21:17:13
#include <stdio.h>

int main(void)
{
char a[11]="HellowWorld", b[11], c[11];
int i;

for(i=0 ; i<11 ; i++){
b[i] = a[i];

if(b[i]=='W' || b[i]=='w') c[i] = '*';
else c[i] = b[i];

if(c[i] == 'o') printf("OOOOO");
else printf("%c", c[i]);
}

printf("\n");

return(0);
}

755:ゆみ
07/07/23 21:30:16
>754
ありがとうございます。
助かりました。

756:デフォルトの名無しさん
07/07/23 21:35:04
>>754
ウホッこれはいい再提出

757:デフォルトの名無しさん
07/07/23 21:44:36
別に文字列コピーした後に表示とか書いてないからおkじゃね?
出題者の意図とは違うと思うけど

758:デフォルトの名無しさん
07/07/23 21:46:38
printf("\n");

return(0);

これはないだろ

759:デフォルトの名無しさん
07/07/23 21:52:07
>>757
よく見れば大丈夫そうだな

760:デフォルトの名無しさん
07/07/23 22:33:47
下記の仕様と条件を満たすプログラムを作成しなさい。

●仕様
・"Hello"、"World"、"kadai"を指定された順番で表示すること。
 ※初期の順番は、"Hello"、"World"、"kadai"とする。
 ※順番はテーブル固定とし、変更毎にビルドを行うこととする。

●条件
・char 型index(1Byte)とchar型の配列hako[6](6Byte)をメンバとする構造体STRINDEX_TBLを作成すること。
・STRINDEX_TBL型の配列tableに、"Hello"、"World"、"kadai"の3つの文字列と表示順番indexを格納すること。
・文字列を表示の際は、printf()を使用し1文字("%c")づつではなく、文字列指定("%s")で指定すること。
・VCのプロジェクト名は"ckadai6"とすること。

●制限時間
・30分


761:デフォルトの名無しさん
07/07/23 22:40:25
これほどまで見下してる出題者は初めてだな

762:デフォルトの名無しさん
07/07/23 22:42:31
今年の4月から、去年質問した初心者が回答者側に回ったのか知らんが
gdgd質問者に注文つけたりうるせーよ、答える気がないなら黙ってスルーしろ。
っつかお前みたいな奴はこのスレには必要ないから、とっとと就職して
安月給プログラマーでもやってろ。

763:デフォルトの名無しさん
07/07/23 22:45:32
スルーできないお前もだろ
まあ俺もだが

764:デフォルトの名無しさん
07/07/23 22:47:22
>>761 = >>763 さすがに痛いわ、こいつ。自覚ありか。うぜぇ。失せろ。
お前みたいな奴に回答なんて求めてねーんだよ、他の回答者も。

765:デフォルトの名無しさん
07/07/23 22:47:51
#include <stdio.h>

typedef struct {
char index;
char hako[6];
} STRINDEX_TBL;

int main(void)
{
STRINDEX_TBL st[] = {{0, "Hello"}, {1, "World"}, {2, "kadai"}};
int i, j;
const int num = sizeof(st)/sizeof(st[0]);
for(i=0; i<num; i++)
for(j=0; j<num; j++)
if(st[j].index == (char)i){printf("%s\n", st[j].hako);break;}
return 0;
}

やっつけ

766:デフォルトの名無しさん
07/07/23 22:53:43
>>761-764
何方もどっちだな

767:デフォルトの名無しさん
07/07/23 22:54:36
>>737>>738
スタックを2つ作り、数字と演算子を別々に積み上げておいて、演算子はどの数字を計算対象にしたら良いか、分かるのか? は、
数字が1234で演算子は+-*/です。これを1は激弱、2は弱、3は強、4は激強
にして指定した数が大きいほど優先順位が高い。
/→*→-→+の順で計算する。

768:デフォルトの名無しさん
07/07/23 22:56:35
>>767
> これを1は激弱、2は弱、3は強、4は激強
4は激強
4は激強
4は激強
4は激強
4は激強

げきつよ?
げききょう

769:デフォルトの名無しさん
07/07/23 23:00:43
>>9
>>32
>>39
>>50
>>148
>>259
>>313
>>327
>>407
>>503


770:デフォルトの名無しさん
07/07/23 23:07:29
>>769
逆によくそんな前からレス探してくるなと感心。
まぁ質問者も丸投げするのは構わないんだけど
催促レスしまくってくるのと問題に最低限の必要事項が
無いのは止めて欲しいかなぁ。


771:デフォルトの名無しさん
07/07/23 23:11:27
>>770 = 去年は質問者だったが、質問の仕方が悪くて散々叩かれた挙句に
答えてもらえなかった腹いせにこのスレで今年の質問者をねちねち詰り弄ることが
今の趣味になってしまった可愛そうな就職浪人。

772:デフォルトの名無しさん
07/07/23 23:11:58
>>770
問題に最低限の事と言われても言われたのはこれくらいです。
使うプログラムも乗せてありますし。

773:デフォルトの名無しさん
07/07/23 23:14:04
>>771
まぁ落ち着け、そう噛み付くな。
自分は基本的にこのスレに住みついてなくて
暇な時に見て解いてるだけで普段はレスもしてないから。

774:デフォルトの名無しさん
07/07/23 23:15:35
>>772
誰もyouにレスしてないyo!

775:デフォルトの名無しさん
07/07/23 23:16:51
やべぇ、ネチネチ質問者を弄っている奴らが簡単に釣れちゃったぜ。
これだから釣りは面白くて止められないぜ。

776:デフォルトの名無しさん
07/07/23 23:16:52
>>774
勝手に勘違いしてすいません

777:デフォルトの名無しさん
07/07/23 23:18:12
ほんとにバカばっかりだな

778:デフォルトの名無しさん
07/07/23 23:19:33
ほんとだね

779:デフォルトの名無しさん
07/07/23 23:19:57
釣れたってww勝手に一人でファビョってただけじゃねぇかwww

780:デフォルトの名無しさん
07/07/23 23:21:33
俺「釣り」とか「釣り師」っていうのは、

 釣り師 ↓     
.            /| ←竿
     ○  /  |
.    (Vヽ/    |
    <>     |
゙'゙":"''"''':'';;':,':;.:.,.,__|_________
             |
  餌(疑似餌)→.§ >゚++< 〜
                 の組み合わせだと思ってたんだけど、

最近自称釣り師がダイレクトで自分の本音を攻撃されて「釣れた!」とか
言ってるの多いよね。
 これは、どっちかというと、



          ,〜〜〜〜〜〜 、
|\     ( 釣れたよ〜・・・)
|  \    `〜〜〜v〜〜〜´
し   \
゙'゙":"''"''':'';;':,':;.:.,.,  ヽ○ノ
          ~~~~~|~~~~~~~ ̄ ̄ ̄ ̄ ̄ ̄ ̄
                 ト>゚++<
              ノ)

かと思うんだけど、どうよ?


781:デフォルトの名無しさん
07/07/23 23:21:38
やべぇ、今度は自分がファビョってますって公言する必死な奴も釣れちゃったYO!
あのなぁ、こっちは質問者を弄っている奴をピンポイントで指して指摘しているんじゃなくて
そういう奴がうぜぇと言っているだけで、それに 反応 しちゃっている奴がわざわざ
エサに食いついちゃっていることに気づかないから笑えるんだよw

782:デフォルトの名無しさん
07/07/23 23:22:47
バカって自分で書いたことと他人が書いたことを見間違えちゃうって本当だったんだ・・・
かわいそう

783:デフォルトの名無しさん
07/07/23 23:23:01
こんなスレあったのか
楽しいwwwwwwwww

784:デフォルトの名無しさん
07/07/23 23:24:33
>>767
素直に釣られましたが教えてください

785:デフォルトの名無しさん
07/07/23 23:26:52
演算子に割り当てた数字と、計算対象としての数字がゴッチャになっている。
優先順位の高さが、何を指しているのか分かっているのか?
何でも良いから加減乗除を使っている計算式を書いて、
それぞれのスタックとやらに計算対象の数字と演算子に割り当てた数字が
どのように積まれていくのか書いてみろ。

786:デフォルトの名無しさん
07/07/23 23:27:01
>>762=>>764=>>769=>>771=>>775=>>781
はいはいクマクマ…はぁ。

787:デフォルトの名無しさん
07/07/23 23:30:47
>>785
わかりません。わからないから来ています

788:デフォルトの名無しさん
07/07/23 23:34:25
即答せず、少しは考えろよ。
式を書いてみろ。
小学生でも理解できる事だ。

789:デフォルトの名無しさん
07/07/23 23:34:41
>>753
おまいのソース見て、俺も書きたくなってきた。
でも、正規表現アルゴリズムって何? というレベル。

790:デフォルトの名無しさん
07/07/23 23:34:53
鳥でもコテ半でもいいからつけてくれんとはぁ〜さっぱりさっぱりだわw

791:デフォルトの名無しさん
07/07/23 23:38:15
1+1=2

792:デフォルトの名無しさん
07/07/23 23:41:31
>>753
授業2回でこんな問題解けるような生徒がいるなら職業プログラマいらないよなw
みんなバイトでいいやってなっちまうわ。
俺もやってみたいけど1時間やそこらじゃ絶対終わらないな・・・
ってか、講師はちゃんとテスト、レビューするのかな?

793:デフォルトの名無しさん
07/07/23 23:41:50
>>788
式ですか?

794:デフォルトの名無しさん
07/07/23 23:49:22
なんかしつこいからさっさと教えたら?

795:デフォルトの名無しさん
07/07/23 23:55:05
>>788
俺も同じ問題がわからない。
教えてくれないか?

796:デフォルトの名無しさん
07/07/23 23:58:10
mainの中の
p=&c;
間違いだって誰か言ってる?

797:デフォルトの名無しさん
07/07/23 23:59:36
>>796
間違えなんですか?

798:デフォルトの名無しさん
07/07/24 00:04:53
>>797
だって洗剤はP&Gだろ?

配列なんだから&はいらんよ。
p=cでpにアドレスがコピーされる。

799:デフォルトの名無しさん
07/07/24 00:04:57
間違えという言葉が間違っていると揚げ足取り。

800:デフォルトの名無しさん
07/07/24 00:07:06
p=cでもp=&c; でもいいと言われました


801:デフォルトの名無しさん
07/07/24 00:10:29
確かに言ってた

802:デフォルトの名無しさん
07/07/24 00:22:13
>>580じゃダメなん?

803:デフォルトの名無しさん
07/07/24 00:22:26
>>747
URLリンク(kansai2channeler.hp.infoseek.co.jp)
一応580でも答えたんだけどスルーされてしまったらしい.
完成したソースでないと受理されないのか.
いずれにしても出題の仕方がひどい.p=cでもp=&cでもいいとかどこの講師だよ.

804:デフォルトの名無しさん
07/07/24 00:26:09
>>803
ありがとうございます

805:デフォルトの名無しさん
07/07/24 00:33:56
何だ、回答が出ているんだ。これだけ聞いていれば答えてくれているよね。
悪いが、作業は中止する。
提示された回答をチェックしてみて下さい。要求通りだと思うよ。
気になったのがあるんだが。
number()で数値と演算子に空白がある時と無い時で動きは違わないか?

806:デフォルトの名無しさん
07/07/24 00:35:47
×数値と演算子に空白
○数値と演算子の間に空白

807:803
07/07/24 00:41:03
スタック回りに微妙なバグがありそうだけど,いい加減に書いたから適当な修正方法が見当たらない.
とりあえずの応急処置ってことで,expression()内の最後のreturn ans;の直前に
op_stack = val_stack = NULL;
の一行を追加しといて.


808:デフォルトの名無しさん
07/07/24 01:02:26
expressionの初っ端の処理がヤバイっぽい

809:デフォルトの名無しさん
07/07/24 01:05:50
>>805
URLリンク(kansai2channeler.hp.infoseek.co.jp)
しかし作っちまったので俺は投稿する
因みに
struct stack *op_stack, *val_stack;

struct stack *op_stack=NULL, *val_stack=NULL;
なんだとおもふ

810:デフォルトの名無しさん
07/07/24 01:41:49
[1] 授業単元:アルゴリズム
[2] 問題文(含コード&リンク): 二分探索木の拡張
詳細はうpしました。元になるプログラムも入っています。
URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
 [3.1] OS: (Windows/Linux/等々) windows
 [3.2] コンパイラ名とバージョン: (gcc 3.4 VC 6.0等) VC6.0
 [3.3] 言語: (C/C++/どちらでも可 のいずれか) C
[4] 期限: ([yyyy年mm月dd日hh:mmまで] または [無期限] のいずれか) 7/27まで
[5] その他の制限:

どなたかご教授よろしくお願いします。


811: ◆DpMW3bRjps
07/07/24 07:34:56
1] 授業単元:プログラミング実習
[2] 問題文(含コード&リンク):任意の文字列を入力し、その文字列の中に任意の文字が何個入っているかを出力する
               プログラムのソースコードを提出しなさい。
                
              実行例)
              文字列を入力してください
              yamamotoyama
              さがす文字を入力してください
              y
              入力された文字列の中に指定された文字は2個あります


[3] 環境
 [3.1] OS: Linux
 [3.2] コンパイラ名とバージョン: gcc 3.4
 [3.3] 言語: C
[4] 期限: 2007年07月25日まで
[5] その他の制限:>>452で教えてもらい、その後少し訂正したんですがダメでした。
しつこいですがもう1回お願いします。。

812:デフォルトの名無しさん
07/07/24 07:55:11
>>452で全く問題なくコンパイル通るが

813:デフォルトの名無しさん
07/07/24 07:58:32
>>811
#include<stdio.h>
int main( void ){
char c, string[100], *pstr;
int count;

printf( "文字列を入力してください\n" );
scanf( "%s%*c", string );
printf( "さがす文字を入力してください\n" );
scanf( "%c%*c", &c );
pstr = string;
count = 0;
while ( *pstr != '\0' ) {
if ( *pstr == c ) {
count++;
}
pstr++;
}
printf( "入力された文字列の中に指定された文字は%d個あります\n", count );
return 0;
}


814:813
07/07/24 08:01:47
その他制限に全く目を通していなかったorz
朝っぱらかやろうとするとすぐこれだ・・・

815:デフォルトの名無しさん
07/07/24 11:16:18

[1] 授業単元:C言語演習
[2] 問題文(含コード&リンク):括弧が使用可能な四則演算の電卓プログラムを作成せよ。文字入力で、入力時の関数はgetsを使用する事。
[3] 環境
 [3.1] OS: WindowsXP
 [3.2] コンパイラ名とバージョン: gcc3.4
 [3.3] 言語: C
[4] 期限: 無期限
[5] その他の制限:自作関数は不可、スキルは初心者用の参考書一冊を一通り読んだくらいです。

よろしくお願いします。

816:デフォルトの名無しさん
07/07/24 11:37:51
自作関数は不可って?

817:デフォルトの名無しさん
07/07/24 11:45:17
ごめんなさい、そこは無視して大丈夫ですorz

818: ◆MmITqPYxy6
07/07/24 13:42:22
[1] 授業単元: IT入門B1 C言語
[2] 問題文(含コード&リンク): 1辺10の立方体内部に含まれる四面体をN個発生し、
               体積の分布(区間数は20程度)を表示するプログラムを
               以下の要求に従って作成し、実行しなさい。
1,四面体を表す構造体(4つの3次元位置ベクトルをメンバーとする) を Tetra という名前で定義する.
typedef struct {. . .} Tetra;

2,構造体 Tetra を返却する,すなわち四面体を生成する以下の名前の関数を作成する.
Tetra mk_tetra(void)

3,四面体の体積を返す次の名前の関数を定義する.
double vol_tetra(Tetra t)

4,Nの値は実行時にキー入力するように設計しなさい.
          
[3] 環境
 [3.1] OS: (Windows/Linux/等々) Linux
 [3.2] コンパイラ名とバージョン: (gcc 3.4 VC 6.0等) gcc 3.4
 [3.3] 言語: (C/C++/どちらでも可 のいずれか) C
[4] 期限: ([yyyy年mm月dd日hh:mmまで] または [無期限] のいずれか) 7月25日迄
[5] その他の制限:
ヒントとして 1、講義で用いた"vector.h" を必ずincludeして使いなさい。
       2、四面体の1つの頂点を原点にして、他の3つの位置を表すベクトルを r1,r2,r3とすると、四面体の体積Vは以下のように与えられる
          V=1/6|(r1×r2)・r3|
がありました。
vector.h はこれです URLリンク(www-it.sci.waseda.ac.jp)


819: ◆MmITqPYxy6
07/07/24 13:46:23
よろしくお願い致します。

820:デフォルトの名無しさん
07/07/24 14:20:45
>>811
>[5] その他の制限:>>452で教えてもらい、その後少し訂正したんですがダメでした。
もしかして、gets()をfgets()に修正したと言うことですか?
それ以外にも変更していますか?
fgets()だけなら、引数を変更するだけで良いんじゃないでしょうか。


821:デフォルトの名無しさん
07/07/24 14:50:12
>452はgets()の使い方が阿呆過ぎる。
それはさておき、>811はなんで自分がどう修正してダメだったかも書かないんだ?

822:デフォルトの名無しさん
07/07/24 14:59:12
>>821
gets()の使い方なんか可愛いもんだ。突っ込みどころ満載で目も当てられない。

823:デフォルトの名無しさん
07/07/24 15:09:24
取り敢えず書いてみた。
#include <stdio.h>
int main()
{
puts("文字列を入力してください");
char buf[200];
if (fgets(buf, sizeof(buf), stdin) == NULL) return 1;
puts("さがす文字を入力してください");
char key;
if (scanf("%c", & key) != 1) return 1;
unsigned count = 0;
for (unsigned ic = 0; buf[ic] != '\0'; ++ic) if (buf[ic] == key) ++count;
printf("入力された文字列の中に指定された文字は%d個あります\n", count);
return 0;
}

824:デフォルトの名無しさん
07/07/24 16:33:28
[1] 授業単元:アルゴリズム
[2] 問題文(含コード&リンク):”rand1000.dat”というデータの個数nとその個数分の整数データが保存されているファイルがある
URLリンク(kansai2channeler.hp.infoseek.co.jp)


このデータをファイルから読み込み

挿入ソート
基数ソート
ヒープソート
クイックソート
マージソート

によってソートできるよう各プログラムを作成せよ

データ数が100,000個のときでも対応できるようメモリを確保しておいてください。

[3] 環境
 [3.1] OS: WindowsXP
 [3.2] コンパイラ名とバージョン:gcc
 [3.3] 言語: C
[4] 期限: 7月28日
[5] その他の制限:出来る限り単純なアルゴリズムで作ってください。合計5つのプログラムを作成してください。

大変な問題で申し訳ありませんがどなたか詳しい方よろしくお願いいたします

825:デフォルトの名無しさん
07/07/24 16:43:08
>>824
なんで露骨にマルチするわけ?
専用ブラウザ使ってる連中の多くが両方とも見ているから、逆効果にしかならないのだが。
#それともネタか? ネタにマジレスしちゃったか?w

826:デフォルトの名無しさん
07/07/24 17:58:03
だから答える気がない奴はいちいちうぜーレスするなよ、邪魔。お前みたいな奴いらねーって
行頭 # 野郎w

827:デフォルトの名無しさん
07/07/24 18:03:33
>>826
お前も、なぁ…?

828:デフォルトの名無しさん
07/07/24 18:07:01
>>826
こいつ、他のスレにも潜んでるよな
IDが出ないのをいいことに好き勝手やってやがる

829:デフォルトの名無しさん
07/07/24 18:08:26
>>828
あ〜はいはい、去年質問したけど質問の仕方が悪くて
今年は自分が質問者を弄るようになった基地外えせ回答者さん乙でありますw
うぜぇから他の回答者の迷惑になるから、文句を言うだけのレスはするなや、答える気も
答える能力もないくせに、うざすぎ

830:デフォルトの名無しさん
07/07/24 18:10:00
[1] 授業単元:プログラミングT
[2] 問題文(含コード&リンク):
二つの任意の正の整数の乗算(*)を、シフト演算の組合わせと除算(/)と
加算(+)のみで解くプログラムを作成しなさい。
[3] 環境
 [3.1] OS: Linux
 [3.2] コンパイラ名とバージョン: gcc 3.4
 [3.3] 言語: C
[4] 期限: 7月25日まで
[5] その他の制限: ビット演算まで習っています。

お願いします。

831:デフォルトの名無しさん
07/07/24 18:11:10
>>828
まぁ、アレだからスルーしてあげてくれ。

832:デフォルトの名無しさん
07/07/24 18:11:43
答える気も能力もないクズらが質問者を叩くだけで自己満足か、必死だな

833:デフォルトの名無しさん
07/07/24 18:17:21
何だ、本当に答える気がなくて質問者をスレのルールに則って詰るだけの低レベルか。
相手にするだけ無駄だ、お前ら俺がいる限り、もうこのスレには来なくて良いから。
邪魔だから失せろ。

834:デフォルトの名無しさん
07/07/24 18:19:16
>>827
質問者に対して、回答ではなく叩きでレスしているって意味だと思うんだが。
頭大丈夫か?

835:デフォルトの名無しさん
07/07/24 18:20:30
ここは馬鹿がアホをたたくスレですか?

836:デフォルトの名無しさん
07/07/24 18:21:31
>>834
お前こそ頭大丈夫か?文盲?

837:デフォルトの名無しさん
07/07/24 18:21:38
>>833
勝手にすればwww

838:デフォルトの名無しさん
07/07/24 18:22:39
>>834
>いちいちうぜーレスするなよ、邪魔。お前みたいな奴いらねーって
これに対してオマエモナーだろ。

839:デフォルトの名無しさん
07/07/24 18:24:38
>>838
いや、オマエモナーは>>827=>>838さんの専売特許ですから

840:デフォルトの名無しさん
07/07/24 18:27:21
なんか話が通じてないぞ。

841:にゃ〜
07/07/24 18:31:53
f(x)=sin(x)をテイラー展開すると

   ∞
f(x)=(-1)^(k-1)*{x^(2k-1)/(2k-1)!}
   k=1

となる.これを利用してsin(x)の値を多項式近似する関数double mysin(double x)を定義し,この関数を利用して,読み込んだ実数xのsin(x)を計算して出力するプログラム(sin.c)を書け.
また,数学関数sin(x)と自分で作ったsin(x)を比較せよ.

という問題なのですがどうしてもわからないんです。
今日中にできる方いらっしゃいますか??  
理解したいので、コメント付きでどうかお願いします。

842:デフォルトの名無しさん
07/07/24 18:36:48
ループで適当なとこまで足してきゃいいだけだろ。

843:デフォルトの名無しさん
07/07/24 18:39:32
>>841
どの辺が分からない?式の意味は分かるよね?

844:デフォルトの名無しさん
07/07/24 18:58:17
>>841
#include <stdio.h>
#include <math.h>

double mysin(double x) {
double sub = 1.0;
int last = 1001; /* 奇数 */
while (last > 1) {
sub = 1 - (x*x / ((last-1)*last)) * sub;
last -= 2;
}
return x * sub;
}
int main(int argc, char *argv[]) {
while (1) {
double x;
scanf("%lf", &x);
printf("mysin(x) = %lf\t(sin(x) = %lf)\n", mysin(x), sin(x));
}
}
/* コメント:原点から遠ざかると近似が効かなくなるのはマクローリンの宿命だな */

845:デフォルトの名無しさん
07/07/24 20:27:21
マクローリン云々よりも漸化式の形で解くのに疑問を持つ
1001もマジックでエロい人だなぁ

846:デフォルトの名無しさん
07/07/24 21:42:25
>>841
クソわかりやすいつもり。わからないなら数学やりなおせ
URLリンク(kansai2channeler.hp.infoseek.co.jp)

847:デフォルトの名無しさん
07/07/24 21:55:07
>>753
ありがとうございますー
最長一致するようにして使わせてもらいます

>\(\)は無理,ってか>>719の言い方じゃイラネエじゃんクソ
勘違いしてたみたいですね
すいません

>つーかなに?ほんとはライブラリとか使えんじゃねーのか???
>>>420が問題の趣旨を理解していない気が激しくするぞコラ
授業ではプリプロセッサにまったく触れてないんでそれはないです

848:デフォルトの名無しさん
07/07/24 22:22:39
さんざん考えたけど難しかったです。
よろしくお願いします。
[1] 授業単元: アルゴリズム
[2] 問題文(含コード&リンク):
2つの複素数z=a+bi、w=c+di(ただしiは虚数単位)を読み込み、足し算とかけ算を計算して表示するプログラムを作成せよ。
但し、以下の仕様を満足するように作成すること。
・複素数の実部と虚部を示す実数型変数をメンバとする構造体COMPLEXを構造体で定義する。
・足し算の関数:COMP_ADD(z、w)とかけ算の関数:COMP_MULT(z、w)を作成し、main関数ではこれらの関数を呼び出す。
(実行例)
1つ目の複素数(実部):2
1つ目の複素数(虚部):3
2つ目の複素数(実部):4
2つ目の複素数(虚部):-2
足し算:(6)+(1)i
かけ算:(14)+(8)i
(ヒント)
複素数を扱う構造体(メンバで実数部、虚数部を2つの数値で格納)を宣言し、各変数を格納、演算を行う。
複素数同士の足し算、かけ算は普通に行う。
(a+bi)+(c+di) (a+bi)×(c+di)
を展開して虚数の2乗は-1という知識があれば解ける。
[3] 環境
 [3.1] OS: Windows
 [3.2] コンパイラ名とバージョン: cygwin gcc
 [3.3] 言語: C言語
[4] 期限:7/26(木)12:00まで

849:にゃ〜
07/07/24 22:46:34
いろいろやってみたところ自己解決しました
載せてくれた人もいるみたいですが
いちおう礼をいっておきます

850:デフォルトの名無しさん
07/07/24 23:00:02
>構造体COMPLEXを構造体で定義する。
構造体を構造体以外でどうやって定義するんだよw

851:デフォルトの名無しさん
07/07/25 00:00:30
>>848 ほい。名前が適当だから、そこだけ自分で修正して。

#include <stdio.h>
typedef struct{
double r;
double i;
} comp;

comp add_comp(comp c1,comp c2){
comp tmp;
tmp.r=c1.r+c2.r;
tmp.i=c1.i+c2.i;
return tmp;
}

comp mul_comp(comp c1,comp c2){
comp tmp;
tmp.r=c1.r*c2.r-c1.i*c2.i;
tmp.i=c1.r*c2.i+c1.i*c2.r;
return tmp;
}


852:デフォルトの名無しさん
07/07/25 00:01:35
>>851の続き

int main(){
comp c1={2.0,3.0};
comp c2={4.0,-2.0};
comp result;
printf("1つ目の複素数(実部):%lf\n",c1.r);
printf("1つ目の複素数(虚部):%lf\n",c1.i);
printf("2つ目の複素数(実部):%lf\n",c2.r);
printf("2つ目の複素数(虚部):%lf\n",c2.i);

result=add_comp(c1,c2);
printf("足し算:(%lf)+(%lf)i\n",result.r,result.i);
result=mul_comp(c1,c2);
printf("かけ算:(%lf)+(%lf)i\n",result.r,result.i);

return 0;
}


853:デフォルトの名無しさん
07/07/25 00:24:02
[1] 授業単元:c言語
[2] 問題文(含コード&リンク):URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
 [3.1] OS:windows
 [3.2] コンパイラ名とバージョン:bcc32
 [3.3] 言語: C
[4] 期限: 7月26日まで
[5] その他の制限:ファイルを読込んだり、書込んだりするところを習いました。

854:デフォルトの名無しさん
07/07/25 00:29:39
>>853
例をみると、改行も区切りと見なしてるが、それでいいのか?

855:デフォルトの名無しさん
07/07/25 00:32:04
>>854
はい

856:にゃ〜
07/07/25 00:37:12
>>844
わかりやすいっす!!
ありがとうございます。勉強しなおします

857:デフォルトの名無しさん
07/07/25 00:39:18
>>853
URLリンク(kansai2channeler.hp.infoseek.co.jp)

858:デフォルトの名無しさん
07/07/25 00:52:03
>>853
URLリンク(kansai2channeler.hp.infoseek.co.jp)

859:デフォルトの名無しさん
07/07/25 00:54:40
>>853 ちょい修正
URLリンク(kansai2channeler.hp.infoseek.co.jp)

860:853
07/07/25 00:57:53
すいません。
補足で
入力ファイルを読込モードでオープン
出力ファイルを書出モードでオープン
while ( 1 ) {
入力ファイルから書式付で字句を読込
ファイル終端なら脱出
出力ファイルに書式付で番号を付けて書込
}
入力ファイルをクローズ
出力ファイルをクローズ
と言う形で作れと書いていました。

861:デフォルトの名無しさん
07/07/25 01:02:14
>>860
後だしイクナイ

862:デフォルトの名無しさん
07/07/25 01:03:16
>>853 >>860
URLリンク(kansai2channeler.hp.infoseek.co.jp)

863:デフォルトの名無しさん
07/07/25 01:04:32
>>862の#include <ctype.h>は不要だから消しておいて

864:853
07/07/25 01:15:02
ありがとうございました。

865:デフォルトの名無しさん
07/07/25 10:02:24
>>851 >>852
ありがとうございます。
ソースも分かりやすく書いてくれたみたいで、参考になります。

866:デフォルトの名無しさん
07/07/25 10:02:24
パワプロ14でオールAを作るプログラムを作れ

867:デフォルトの名無しさん
07/07/25 10:48:35
すごい宿題だな

868:デフォルトの名無しさん
07/07/25 11:20:58
>>866
攻略本が必要だ。
でも宿題の内容熱いな。

869:デフォルトの名無しさん
07/07/25 11:44:08
探索とその評価の方法をパワプロを通して学ぶわけだな

870: ◆6MtsdamhF6
07/07/25 11:45:35
すいません、まだ初心者であんまりわかりません。
締切が近いのでどうかお願いします

【質問テンプレ】
[1] 授業単元:プログラミングC言語
[2] 問題文(含コード&リンク):
次の違いに注意しながら、forの変わりにwhileを使うものにそれぞれ
書き換えなさい。ただし書き換えは最低限にすること
(1)
#include<stdio.h>
main(){
int nc, c;
for(nc = 0; (c= getchar()) != EOF; nc++)
printf("%c", c);
printf("\nTatal=%d\n", nc);
}

A#include<stdio.h>
main(){
int nc, c;
for(nc = 0; (c= getchar()) != EOF; nc++)
putchar(c);
printf("\n%d\n", nc);
}
[3] 環境
 [3.1] OS: Linux
 [3.2] コンパイラ名とバージョン: gcc
 [3.3] 言語: C
[4] 期限:今日の14時までなんです。
どうかおねがいします。

871:デフォルトの名無しさん
07/07/25 14:19:36
#include<stdio.h>
main(){
int nc=0, c;
while((c= getchar()) != EOF) {
printf("%c", c);
nc++;
}
printf("\nTatal=%d\n", nc);
}

#include<stdio.h>
main(){
int nc=0, c;
while((c= getchar()) != EOF) {
putchar(c);
n++;
}
printf("\n%d\n", nc);
}

期限切れだが

872:デフォルトの名無しさん
07/07/25 14:22:21
Aのn++はnc++の間違い

873:デフォルトの名無しさん
07/07/25 15:46:14
今、>>841をやってみた。最初は簡単かと思ったけど、
そのまま階乗つかうとオーバーフローするから面倒なのね。
>>844ほど華麗ではないけど、x/n * ...x/3 * x/2 * x/1の和で計算した。

874:デフォルトの名無しさん
07/07/25 15:55:45
[1] 授業単元:C言語
[2] 問題文(含コード&リンク):
以下のように、2桁以下の正整数が1行に3つずつ書かれたファイルを input.txt とする。
ただし、ファイルの末尾には、終了を表す番兵0がある。
1 45 90
2 7 41
13 67 60
0
入力リダイレクトで input.txt を読み込み、出力リダイレクトで、以下のような形式で output.txt に保存するプログラムを作れ。
番号 数学 英語 合計
01 45 90 135
02 7 41 48
13 67 60 127
[3] 環境
 [3.1] OS: windows
 [3.2] コンパイラ名とバージョン:bcc32
 [3.3] 言語: C
[4] 期限:7/27
反復構文を使うっぽいです。

875:デフォルトの名無しさん
07/07/25 16:42:24
[1] 授業単元:情報基礎
[2] 問題文:次の仕様を満たすプログラムを作成せよ
(1)入力は2以上の整数n
出力はnのすべての正の約数
(2)入力は2以上の整数n
出力はnの正の約数の個数
(3)入力は2以上の整数n
出力はnが素数ならば"n is prime",
合成数ならば"n is not prime"
(nの部分には、入力した整数が表示されるようにすること)
3つのプログラムは1つにまとめてもよい。その場合には、ど
れが約数でどれが約数の個数を表しているかが分かるようにす
ること。

[3] 環境
 [3.1] OS:Linux
 [3.2] コンパイラ名とバージョン:gcc
 [3.3] 言語:c
[4] 期限:7月27日(金)提出は20:45までです


876:デフォルトの名無しさん
07/07/25 16:43:30
>>874
#include <stdio.h>
void main(){
int buf = 0;
int count = 0;
int total = 0;
printf("番号 数学 英語 合計\n");
while(scanf("%d",&buf)) {
if(buf == 0)
break;
count++;
printf("%d ", buf);
total += buf;
if(!(count%3)){
printf("%d\n", total);
total = 0;
}
}
}
なんにもエラー処理してないけどこんなんでいいかな・・・



次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

5389日前に更新/328 KB
担当:undef