ぼるじょあがC/C++の ..
751:デフォルトの名無しさん
08/01/21 21:26:39
>>741
問9
#include<stdio.h>
int main(void){
int i,j,sum;
for(i = 1;i <=10; i++){
sum =0;
for(j=1; j<= i;j++){
if(j>1){
printf("+");
}
printf("%d", j);
sum+=j;
}
printf("=%d\n",sum);
}
return 0;
}
752:デフォルトの名無しさん
08/01/21 21:51:55
>>749
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
#include<math.h>
int main(void)
{
int i,n,f;
double x,y,r,pi;
srand(time(NULL));
printf("繰り返し回数を入力:");
scanf("%d",&n);
f=0;
for(i=0;i<n;i++){
x=(double)rand()/RAND_MAX;
y=(double)rand()/RAND_MAX;
r=sqrt(x*x+y*y);
if(r<=1){ f++; }
}
pi = (double)f/n*4;
printf("%1f\n",pi);
return 0;
}
753:名無し
08/01/21 23:24:04
[1] 授業単元: Cプログラミング
[2] 問題文(含コード&リンク): 英文の文字列を入力した場合、文字数・単語数・文章数を求めるプログラムを作成せよ。
英文中の特殊文字は(, . ! ?)のみとする。単語の間には1つ以上(2つ以上でも可)のスペースが入るものとする。
文章の最後には必ず. ! ?のどれかが単独で使われる。
,や. ! ?の後に入る可能性があるが前にはスペースは入らないものとする。省略につかう.は今回ないものとする。
入力に関して:キーボードから、文字列を1行で入力する
出力に関して:文字数・単語数・文章数をそれぞれスペース1つあけて1行で出力(+改行)
[3] 環境
[3.1] OS:XP
[3.2] コンパイラ名とバージョン:わからないです
[3.3] 言語: C++
[4] 期限: 2008年1月23日12:00まで
[5] その他の制限:StudyCを使ってます。よろしくお願いします。
754:名無し
08/01/21 23:30:50
>>752さん
749の問題を書き込んだものですがRAND_MAXのところがエラー表示されます。
申し訳ありませんがもう一度確認してもらってよろしいでしょうか。
755:デフォルトの名無しさん
08/01/21 23:56:35
>>754
URLリンク(www.orchid.co.jp)
756:デフォルトの名無しさん
08/01/22 00:24:46
2つの整数を入力して、その2つの整数の最大公約数と、
最小公倍数を求めるプログラムを作りなさい。
このプログラムをお願いします。
757:デフォルトの名無しさん
08/01/22 00:47:11
>>756
マルチは死ね
758:デフォルトの名無しさん
08/01/22 01:07:51
[1] 授業単元:C言語
[2] 問題文(含コード&リンク):
1からNまでの和を求めよ。
1からNの総和を求める関数をint wa(int N)として定義せよ。
(注)WIN32コンソールアプリケーションで、Nの値をキーボードより入力。
#include <stdio.h>
int wa(N);
{
int i, sum = 0;
for(int i=1, i<=N, i++) Sum+=i;
}
int main(void)
{
}
※ これを参考に作成するのですが、イマイチ分かりません
[3] 環境
[3.1] OS: (Windows)
[3.2] コンパイラ名とバージョン: (".NET 2003")
[3.3] 言語: (C++)
期限は特にありませんので、宜しくお願いします。
759:デフォルトの名無しさん
08/01/22 01:19:25
#include <stdio.h>
int wa(int N);
{
int i, sum = 0;
for(int i=1, i<=N, i++) Sum+=i;
}
int main(void)
{
int n;
scanf("%d",&n);
printf("%d\n",wa(n));
return 0;
}
760:デフォルトの名無しさん
08/01/22 01:50:09
>>759
ありがとうございます。
しかし、.NET 2003環境で
#include <stdafx.h>
#include <stdio.h>
int wa(int N);
{
int i, sum = 0;
for(int i=1, i<=N, i++) Sum+=i;
}
int main(void)
{
int n;
scanf("%d",&n);
printf("%d\n",wa(n));
return 0;
}
このようなエラーが出てしまします。
error C2447: '{' : 対応する関数ヘッダーがありません。旧形式の仮引数リストの可能性があります。
{の対応は間違っているようには見えないのですがうまくいきません。
761:デフォルトの名無しさん
08/01/22 01:56:32
for文は for(int i=1, i<=N, i++) じゃなくて
for(int i=1; i<=N; i++) こうだろう
Sumもなんでか大文字になってるし、
wa関数に return sum; もない
762:デフォルトの名無しさん
08/01/22 02:12:15
>>761
ありがとうございます。
for文ご指摘のとうりでした
直して見たのですが、やはり
error C2447: '{' : 対応する関数ヘッダーがありません。旧形式の仮引数リストの可能性があります。
とでてしまいます。>< お時間ありましたらもう少しおつきあい下さいませ。
#include <stdafx.h>
#include <stdio.h>
int wa(int N);
{
int i, sum = 0;
for(int i=1; i<=N; i++) sum+=i;
return sum;
}
int main(void)
{
int n;
scanf("%d",&n);
printf("%d\n",wa(n));
return 0;
}
763:デフォルトの名無しさん
08/01/22 03:47:25
int wa(int N); ←なにこのセミコロンw
764:ラッセン沖縄
08/01/22 09:42:41
[1]授業単元 プログラミングB
[2]問題文 次の仕様を満たし、入力例の通りにして実行でき、更に、出力例の通りに出力されるようなCプログラムを作成せよ。(出力の空白や桁数にも留意せよ。)
仕様 三角形の底辺と高さ入力し、その面積を求める。
入力例 Z:\>(kadai)
(カッコ内を 底辺=(3.0)
入力する)高さ=(4.5)
出力例* ----+----|----+----|----+----|----+----|----+----|
底辺=3.000, 高さ=4.500
面積=6.7500
(*目盛りは桁を示すためのもの。プログラムで出力するのではない。)
よろしくお願いします。
765:デフォルトの名無しさん
08/01/22 10:06:11
>>763
あ、ほんとだ!
ありがとうございます。コンパイル成功しました。
でも、動かない。。
プロンプト起動後に数値入力→Enter
すると終了してしまいます><
#include <stdafx.h>
#include <stdio.h>
int wa(int N)
{
int i, sum = 0;
for(int i=1; i<=N; i++) sum+=i;
return sum;
}
int main(void)
{
int n;
scanf("%d",&n);
printf("%d\n",wa(n));
return 0;
}
766:デフォルトの名無しさん
08/01/22 13:47:11
>>756
#include<stdio.h>
main(){
int a,b,x,y,gcd,lcm;
printf("1つ目の整数を入力して下さい:"); scanf("%d", &x);
printf("2つ目の整数を入力して下さい:"); scanf("%d", &y);
if(x>y){a = x; b = y;}
else{a = y; b = x;}
while(b > 0){gcd = a%b; a = b; b = gcd;}
gcd = a; lcm = x*y/gcd;
printf("%dと%dの最大公約数は%d、最小公倍数は%d\n", x, y, gcd, lcm);
}
767:デフォルトの名無しさん
08/01/22 15:09:47
>743,744,745,746,747,748,750,751
ありがとうございます。
あの、問6の問題なんですが、
switchの構文で作ってもらうことできますか?
768:デフォルトの名無しさん
08/01/22 15:14:28
問6
#include<stdio.h>
int main(void){
char x;
printf("1文字入力して下さい : ");
scanf("%c", &x);
switch(x){
case 'a':
case 'b':
case 'c':
case 'd':
case 'e':
printf("%c です\n", x);
break;
default:
printf("a,b,c,d,e 以外の文字\n");
}
return 0;
}
769:デフォルトの名無しさん
08/01/22 15:17:11
>>768
ありがとうございます。
すごく助かりました。
770:デフォルトの名無しさん
08/01/23 00:37:23
[1] 授業単元:C言語
[2] 問題文(含コード&リンク):URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
[3.1] OS:windows
[3.2] コンパイラ名とバージョン:gcc
[3.3] 言語:C
[4] 期限:1/24
[5] その他の制限:
771:デフォルトの名無しさん
08/01/23 00:53:51
>>765
それは正常に動いてる。 処理が終わったから窓を閉じただけ。
実行後も見たいなら、ファイル名を指定して実行から cmd と打てば
コマンドラインが出るから、そこに実行ファイルドラッグするなりして
再度実行してみればいいと思うよ
772:名無し
08/01/23 01:17:06
[1] 授業単元: Cプログラミング
[2] 問題文(含コード&リンク):
(1)複数の整数を降順(大きい順)にソートするプログラムを作成せよ
。
入力に関して:キーボードから、入力する整数の個数を入力(最大で10とする)し、次に指定した数の整数をスペース1つ開けて1行で入力するものとする。
このとき、入力を促す文字は表示しないこと。
出力に関して:ソートした整数をスペース1つのみあけて1行で出力する(+改行)。
指定した数値・改行以外の出力は一切行わない事。
久々のROに戸惑い中@緋月とーま の発言:
(2)数値を表示して最大値の回答をチェックするプログラムを作成せよ
入力1に関して:キーボードからまず、表示する整数の個数を入力(最大で10とする)する。
この時、入力を促す文字は表示しないこと。
出力1に関して:rand()関数を用いて0〜100までのランダムな整数を、入力1の数だけ生成して表示する。
指定した数値・改行以外の出力は一切行わない事。
入力2に関して:続いてキーボードから、表示された数値のうち最大のものを選び(間違えても構わない)その数値を入力する
このとき、入力を促す文字は表示しないこと。
出力2に関して:入力2の値が正解なら1を、間違っていれば0を出力する(+改行)。
指定した数値・改行以外の出力は一切行わない事。
[3] 環境
[3.1] OS:XP
[3.2] コンパイラ名とバージョン:わからないです
[3.3] 言語: C
[4] 期限: 2008年1月24日10:30まで
[5] その他の制限:StudyCを使ってます。2問あるんですが、よろしくお願いいたします。
773:デフォルトの名無しさん
08/01/23 11:40:10
[1] 授業単元: プログラミング
[2] 問題文(含コード&リンク): 2次方程式 ax^2 + bx + c = 0について、a,b,cをキーボードから入力して解を求めるプログラムを作成せよ。
a=0を入力を入力するまでは繰り返し計算を行うようにする
平方根の計算も必要です
[3] 環境
[3.1] OS: windowsXP [3.2] コンパイラ名とバージョン:VC2005
[3.3] 言語: C++
[4] 期限: 今週中におねがいします。できれば早く。
初歩的ですいません。
774:デフォルトの名無しさん
08/01/23 12:48:38
>>773
そんなの機械系学科の俺でも習ったぞ?
775:デフォルトの名無しさん
08/01/23 12:48:44
>久々のROに戸惑い中@緋月とーま の発言:
うーむ……
776:デフォルトの名無しさん
08/01/23 16:52:17
>>772
>久々のROに戸惑い中@緋月とーま の発言
ここがよくわからん。もう少しくやしく。
777:名無し
08/01/23 18:31:07
776さん>>久々のROに戸惑い中@緋月とーま の発言
これはもうムシしてください。へんな文章入れて申し訳ないです。
778:デフォルトの名無しさん
08/01/23 18:58:15
>>773
#include <iostream>
#include <math.h>
using namespace std;
int main(void)
{
double a,b,c,d;
cout << "a=";cin >> a;
cout << "b=";cin >> b;
cout << "c=";cin >> c;
d=b*b-4*a*c;
if(d==0)
{
double x;
x=-b/(2*a);
cout << "x=" << x << endl;
}
else if(d>0)
{
double x1,x2;
x1=(-b+sqrt(d))/(2*a);x2=(-d-sqrt(d))/(2*a);
cout << "x1=" << x1 << "\nx2=" << x2 << endl;
}
else
{
double xa,xb;
xa=-d/(2*a);xb=sqrt(-d)/(2*a);
cout << "x1=" << xa << "+" << xb << "i\nx2=" << xa << "-" << xb << "i" << endl;
}
}
779:デフォルトの名無しさん
08/01/23 19:18:59
久々のROに戸惑い中@緋月とーま の発言:
780:デフォルトの名無しさん
08/01/23 21:40:24
タコじょあ
781:ぼるじょあ ◆yBEncckFOU
08/01/23 21:59:54
>>770
#include<stdio.h>
#define num 10/* (・3・)エェー 等号とセミコロンはいらないYO */
int i;
double data[num]={ 173.8,168.2,180.3,166.0,189.7,167.4,159.8,170.5,167.5,167.4};/* (・3・)エェー セミコロン付いてないYO */
int main(void)
{
for(i=1;i<=num;i++){
int max=i,j;/* (・3・)エェー 変数maxとjが宣言されて無いYO */
for(j=i+1;j<=num;j++)/*最大の要素の場所を捜す*/
if (data[max]<data[j])max=j;
data[i]=data[max];data[max]=data[i];/*入れ換え*/
}
for(i=1;i<=num;i++)printf("%7.1f ",data[i]);
return 0;
}
782:ひかり ◆d0B/bjbQYo
08/01/23 22:25:04
#include<stdio.h>
#define num (10)//セミコロンとかいらん
double data[num]={ 173.8,168.2,180.3,166.0,189.7,167.4,159.8,170.5,167.5,167.4};/*セミコロン付けな*/
int main(void)
{
int i,j,max;/*変数宣言しとけ*/
double temp;/*入れ替え時に使用*/
for(i=0;i<=num-1;i++)/*配列の添え字は[0]から[num-1]まで*/
{
max=i;
for(j=i;j<=num-1;j++)/*[i]から[num-1]まで*/
if (data[max]<data[j])max=j;
temp=data[i];/*tempを利用する*/
data[i]=data[max];
data[max]=temp;/*tempから書き込む*/
}
for(i=0;i<=num-1;i++)printf("%7.1f ",data[i]);/*配列の添え字は[0]から[num-1]まで*/
puts("");/*最後、改行するためになんとなく*/
return 0;
}
783:デフォルトの名無しさん
08/01/23 23:09:48
[1] 授業単元: programming1
[2] 問題文(含コード&リンク): URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
[3.1] OS: Unix
[3.2] コンパイラ名とバージョン: gcc 3.4
[3.3] 言語: C
[4] 期限: 2008年1月24日21:00まで
[5] その他の制限: 特にありません
よろしくお願いします。
784:デフォルトの名無しさん
08/01/23 23:23:25
>>781>>782
ありがとうございます!
785:デフォルトの名無しさん
08/01/23 23:48:46
[1] 授業単元:プログラミング演習
[2] 問題文(含コード&リンク):URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
[3.1] OS:windows
[3.2] コンパイラ名とバージョン:gcc
[3.3] 言語:C
[4] 期限:1/26
[5] その他の制限:なし
どなたかよろしくお願いします
786:homoじょあ ◆5OLf4yFnuM
08/01/24 00:42:23
>>772
#include <stdio.h>
int main(void){
int n, num[10], i, k;
scanf("%d", &n);
if(n > 10)return 0;
for(i=0; i<n; i++)scanf("%d", &num[i]);)
for(i=0; i<n-1; i++){
for(k=i+1; k<n; k++){
if(num[i] < num[k]){
int swap = num[i];
num[i] = num[k];
num[k] = swap;
}
}
}
for(i=0; i<n; i++)printf("%d ", num[i]);
printf("\n");
return 0;
}
787:homoじょあ ◆5OLf4yFnuM
08/01/24 00:43:29
>>772
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main(void){
int n, in, max = -1, i;
scanf("%d", &n);
if(n > 10)return 0;
srand((unsigned)time(NULL));
for(i=0; i<n; i++){
int tmp = rand()%101;
if(max < tmp)max = tmp;
printf("%d ", tmp);
}
printf("\n");
scanf("%d", &in);
printf("%d\n", (in == max));
return 0;
}
788:デフォルトの名無しさん
08/01/24 21:30:25
[1] 授業単元: C言語
[2] 問題文
間違った日付が入力された場合、再入力させる仕様にする
[3] 環境
[3.1] OS: Windows XP
[3.2] コンパイラ名とバージョン: VC2005
[3.3] 言語: C
[4] 期限:1月27日まで
[5] その他の制限: ここに書いてあるのはプログラムの一部です
#include<stdio.h>
int main() {
int year,months,day;
int sum,i;
int m_array[12] = {31,28,31,30,31,30,31,31,30,31,30,31};
char*week[7] = {"日","月","火","水","木","金","土"};
sum =0;
printf ("input (e.g. ****/**/**)\n>>");
scanf ("%d/%d/%d",&year,&months,&day
if ((imonths >2) && ((iyear % 4 == 0) && ((iyear % 100 !=0) || (iyear % 400 == 0)))) {
sum++;
}
for (i =0; i < imonths-1; i++) {
sum += m_array[i];
}
おそらくprintf scanf あたりを変えてwhile文とかbreakを使うと思うのですが・・
ヨロシクお願いします。
789:デフォルトの名無しさん
08/01/24 21:41:19
そんなのも分からないのに良くポインタ扱えるな
790:デフォルトの名無しさん
08/01/24 21:58:12
自分で作ったわけではありませんから
791:791
08/01/24 22:13:51
>>788
そんな変な手の加え方してコンパイル通せるのか?
#include<stdio.h>
int main() {
int year,months,day;
int sum,i;
int m_array[12] = {31,28,31,30,31,30,31,31,30,31,30,31};
char*week[7] = {"日","月","火","水","木","金","土"};
sum =0;
do{
printf ("input (e.g. ****/**/**)\n>>");
scanf ("%d/%d/%d",&year,&months,&day);
if(year%4==0 && year%100!=0 || year%400==0)
m_array[1]=29;
else
m_array[1]=28;
}while(months<1 || months>12 || day<1 || day>m_array[months-1]);
for (i =0; i < imonths-1; i++) {
sum += m_array[i];
}
792:デフォルトの名無しさん
08/01/25 02:48:04
>>785
〜 ヘッダのinclude 省略 〜
int main(void){
char line[18+1]={0}, buf[16+1]={0}, *p;
int i, num, tmp;
printf("Input Number (ex. B0000000001111011 or D123 ) ===>");
fgets(line, 18+1, stdin);
p = strchr(line, '\n');
if(p != NULL) *p = '\0';
switch(line[0]){
case 'B':
if(strlen(line) != 17) return 1;
for(i=16, tmp=1, num=0; i > 0; i--, tmp*=2) if(line[i] == '1') num += tmp;
if(line[1] == '1') num -= 65536;
printf("%s ===> D%6d\n", line, num);
break;
case 'D':
num = atoi(&line[1]);
if(num < -32768 || num > 32767) return 1;
if(num < 0) num += 65536;
for(i=15; i >= 0 && num != 0; i--, num/=2){
if( num%2 == 0) buf[i] = '0';
else buf[i] = '1';
}
for(; i >= 0; i--) buf[i] = '0';
printf("D%6s ===> B%s\n", &(line[1]), buf);
break;
}
return 0;
}
793:デフォルトの名無しさん
08/01/25 21:40:23
蛆じょあ
794: ◆t0OD42fqHw
08/01/26 16:55:04
[1] 授業単元: C++
[2] 問題文(: vectorクラスを利用して、int型を格納する動的配列を生成せよ
まず1〜20までの間の奇数を格納せよ。
それから、追加で 21〜40までの間の奇数を格納せよ
そして、11〜30までの間の奇数を格納している要素を削除せよ
[3] 環境
[3.1] OS: WindowsXP
[3.2] コンパイラ名とバージョン:Visual Studio 2005
[3.3] 言語:C++
[4] 期限: [無期限]
[5] その他の制限: なし
795:デフォルトの名無しさん
08/01/26 17:13:05
#include <vector>
#include <algorithm>
#include <cstdio>
static void bar(int val) {printf("%d\n", val);}
int main()
{
std::vector<int> foo;
for (int ic = 1; ic <= 20; ic += 2) {
foo.push_back(ic);
}
for (int ic = 21; ic <= 40; ic += 2) {
foo.push_back(ic);
}
for (int ic = 11; ic <= 30; ic += 2) {
foo.erase(remove(foo.begin(), foo.end(), ic), foo.end());
}
std::for_each(foo.begin(), foo.end(), bar);
return 0;
}
796:デフォルトの名無しさん
08/01/27 14:43:59
[1] 授業単元:プログラミングU
[2] 問題文(含コード&リンク):与えられたデータ(data1.txt
)に対して季節調整を行うプログラムを作成しなさい。
<調整法>
i年目、j月のデータを aij とする。
月平均 Mj
月平均の平均 M
調整のための指数 Sj = Mj / M
調整結果 aij / Sj
[3] 環境
[3.1] OS:Windows
[3.2] コンパイラ名とバージョン: Visual Studio 2005
[3.3] 言語:C++
[4] 期限:2月3日
[5] その他の制限: 特にありません。
よろしくお願いします。
797:デフォルトの名無しさん
08/01/27 16:27:32
>>796
data1.txtがどんな物か分からないとやりようが無いYO
data1.txtをうpしてクレYO
調整結果は画面に表示すれば良いのかな?
798: ◆DSpH.2sBBQ
08/01/27 19:43:32
[1] 授業単元: C++
[2] 問題文
格子状(一辺20mのブロック×縦横10ブロック)の道を、人が4m/sで移動し
任意の座標(通路上に自由に指定可)にある複数の障害物とのそれぞれの距離を、各分岐点で表示しなさい。
スタートは左下の点、ゴールは一番右上の点とする。人が通る道順も自由に指定可。
障害物の上を通る場合は人の速度を1m/sとし、ゴールに到着するまでにかかった総時間も表示しなさい。
[3] 環境
[3.1] OS: WindowsXP
[3.2] コンパイラ名とバージョン:Visual Studio 2005
[3.3] 言語:C++
[4] 期限: とても急いでます(>_<)
[5] その他の制限: なし
本当に切羽詰ってます!ぼるじょあさん、宜しくお願い致します!!
799:#
08/01/27 20:31:30
>>797
すいません。貼り付け忘れてました。
データ(12カ月×5年)
40.0 37.7 51.8 45.9 45.2 45.4 62.0 40.8 42.1 49.1 51.5 93.4
42.6 39.5 53.4 47.6 47.0 47.5 63.5 42.2 42.9 51.1 51.8 94.7
43.3 39.8 53.6 48.5 48.3 47.5 65.9 42.8 43.7 53.2 52.9 97.0
44.9 42.3 55.0 50.7 48.6 48.9 68.8 43.3 46.2 54.2 54.6 100.5
47.5 42.8 57.7 52.6 51.0 50.9 71.4 45.0 47.3 56.8 56.7 102.7
調整結果は、画面に表示させてください。よろしくお願いします。
800:デフォルトの名無しさん
08/01/27 21:59:00
[1] 授業単元:C言語
[2] 問題文(含コード&リンク):
2つの正の整数値a,bの最大公約数を出力するプログラムを
ユークリッドの互除法というアルゴリズムを用いて作成したい。
以下のプログラムの****部分に適切な処理をいれて,プログラムを完成させなさい。
#include <stdio.h>
int main( void )
{
int a, b; /* 変数の宣言 */
int m, n;
scanf( "%d,%d", &a, &b );/* 2つの正の整数値を入力する */
m= a ;
n= b ;
while(m **** n){ /* ユークリッドの互除法を適用 */
if( m > n )
m = ***** ;
else
n = **** ;
[3] 環境
[3.1] OS:WindowsXP
[3.2] コンパイラ名とバージョン: (gcc 3.4 VC 6.0等)
[3.3] 言語: C言語
[4] 期限: [2008年1月28日12:00まで]
[5] その他の制限: 特になし
よろしくお願いします。
801:デフォルトの名無しさん
08/01/28 03:38:20
全部あれかよwなさけねえ
802:デフォルトの名無しさん
08/01/28 20:27:53
>>796
こんなので良いかな?
URLリンク(kansai2channeler.hp.infoseek.co.jp)
803:デフォルトの名無しさん
08/01/31 16:31:13
[1]授業単元:C言語
[2]問題文:単純なソートアルゴリズム(バブル・選択・挿入)のどれか1つと、クイックソートアルゴリズムを計算量を比較するプログラムを作る。
*自分はバブルソートを選択しました。
[3]環境
[3.1]OS:(Windows XP)
[3.2]Ultara-C pro version 2.1
[3.3]言語:c言語
[4]期限:2008年2月1日 AM2:00まで
[5]その他制限:特になし
プログラムが長かったのでろだにアップしています。URLは下記に貼り付けています。
2008/01/30(Wed) 17:02 No.5941 が自分の書き込みです。
URLリンク(kansai2channeler.hp.infoseek.co.jp)
よろしくお願いします。
804:デフォルトの名無しさん
08/01/31 18:39:47
[1] 授業単元: C言語
[2] 問題文(含コード&リンク):フロッピードライブのディスクイメージを作成せよ
[3] 環境
[3.1] OS: Windows
[3.2] コンパイラ名とバージョン: Borland C++
[3.3] 言語:C
[4] 期限: 2008/02/05に提出
[5] その他の制限:
基本的なことはできます。RAW Readをやらせたいんだと思うので、標準ライブラリ以外はダメです。
ioctrlを使うんだと思うんですが・・・。
すみません。資料へのリンクだけでもいいのでお願いします。
805:デフォルトの名無しさん
08/01/31 19:16:23
>>804
・ディスクイメージを作成せよ
・RAW Readをやらせたい
・ioctrlを使う
相互に矛盾しているとは思わんかね。
806:804
08/01/31 19:43:51
>>805
そうなんですか・・・?
FDイメージを作成するためにFDをFATでのReadではなく、RAW Readをしなければならない。
RAW Readをするためには・・・と思って調べていくとioctrlがそれっぽいかなぁというところまでは行ったつもりだったんですけど、違うんですか?
807:デフォルトの名無しさん
08/01/31 21:40:57
>>802
はい、ありがとうございます。使わせていただきます。
808:デフォルトの名無しさん
08/01/31 22:35:54
[1] 授業単元:C言語
[2] 問題文(含コード&リンク): 線形探索/二分探索 の2つの方法での計算時間の違いをC言語実装によって
定量的に示す。
[3] 環境
[3.1] OS: WindowsXP
[3.2] コンパイラ名とバージョン:Microsoft Visual C++ 2005 Express Edition もしくはUltara-C pro version 2.1
[3.3] 言語: Cのみ
[4] 期限: ([2008年2月1日AM:6:00まで
[5] その他の制限: 特に無いです。
よろしくお願いします
809:デフォルトの名無しさん
08/02/01 02:28:34
[1] 授業単元:C言語
[2] 問題文(含コード&リンク):手の平の2値画像(URLリンク(www2.uploda.org)):手領域は255、背景は0 を使って
・手領域の面積 SS
・手領域の重心位置 (Mg,Ng)
・手領域の外接長方形 (RI,RJ) (RM,RN)
を計算して表示するプログラムを作成しなさい。
[3] 環境
[3.1] OS: WindowsXP
[3.2] コンパイラ名とバージョン: Visual Studio 2005
[3.3] 言語: Cのみ
[4] 期限: 2008年2月4日まで
[5] その他の制限:なし
よろしくお願いします。
810:デフォルトの名無しさん
08/02/01 19:08:22
>>804
Windows環境でBorlandC++を使っていいならAPIでいいやん。
CreateFile
引数:\\.\C:\
で検索してみ。
811:モダン
08/02/01 19:14:16
[1] 授業単元:C言語
[2] 問題文 優先順位つき四則演算(小数点付き)
例 261.5*(2.3+7.9)+6.3/3.0=
を計算して表示するプログラムを作成しなさい。
[3] 環境
[3.1] OS: WindowsXP
[3.2] コンパイラ名とバージョン: Visual Studio 2005
[3.3] 言語: C++のみ
[4] 期限: 2008年2月5日まで
[5] その他の制限:特にありません
812:デフォルトの名無しさん
08/02/01 19:36:28
マルチ死ね
813:デフォルトの名無しさん
08/02/05 15:20:05
セリオも死ね
814:デフォルトの名無しさん
08/02/14 07:59:39
>>811
URLリンク(kansai2channeler.hp.infoseek.co.jp)
815:デフォルトの名無しさん
08/02/14 13:33:29
[1] 授業単元:プログラミング
[2] 問題文:URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
[3.1] OS:Windows
[3.2] コンパイラ名とバージョン: VC2005
[3.3] 言語:C
[4] 期限:2月17日
[5] その他の制限:特にありません。
よろしくお願いします。
816:デフォルトの名無しさん
08/02/15 10:56:45
>>815
URLリンク(kansai2channeler.hp.infoseek.co.jp)
817:デフォルトの名無しさん
08/02/16 16:21:16
>>816
ありがとうございます。
818:デフォルトの名無しさん
08/03/03 13:16:38
[1] 授業単元:プログラミング
[2] 問題文:URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
[3.1] OS:Windows
[3.2] コンパイラ名とバージョン: VC2005
[3.3] 言語:C
[4] 期限:3月3日 15:00(15:15分学校へ)
[5] その他の制限:特にありません。
819:ぼるじょあ ◆yBEncckFOU
08/03/05 00:52:34
>>818
(・3・) エェー (いろんな意味で)ねーYO!
820:ぼるじょあ ◆yBEncckFOU
08/03/17 15:14:40
(・3・) エェー Fizz-Buzz 問題解いてみるYO!
問題:
1から100までの数をプリントするプログラムを書け。
ただし3の倍数のときは数の代わりに「Fizz」と、5の倍数のときは「Buzz」とプリントし、
3と5両方の倍数の場合には「FizzBuzz」とプリントすること。
#include <stdio.h>
int main(void){
int i;
for(i=1;i<=100;i++){
if(i%3==0 && i%5==0) printf("FizzBuzz\n");
else if(i%3==0) printf("Fizz\n");
else if(i%5==0) printf("Buzz\n");
else printf("%d\n", i);
}
return 0;
}
821:ぼるじょあ ◆yBEncckFOU
08/03/17 15:20:09
>>820 の別解
#include <stdio.h>
int main(void){
int i;
char *print_format[]={"%d\n", "Fizz\n", "Buzz\n", "FizzBuzz\n"};
for(i=1;i<=100;i++){
printf(print_format[!(i%3)+(!(i%5))*2], i);
}
return 0;
}
822:デフォルトの名無しさん
08/03/17 22:27:32
>>820-821
ナベアツオツ
823:デフォルトの名無しさん
08/03/18 09:24:13
本家が荒れているのでこちらをage!
宿題をやってもらいたい人かもーん!!
824:デフォルトの名無しさん
08/03/19 00:46:24
今の時期に宿題が出るとは思えませんが、お暇ならこの問題をどうぞ
3^(1,000,000,000,000,000)MOD23を計算せよ。
825:デフォルトの名無しさん
08/03/19 00:58:33
3と23の最小公倍数ってどうやって算出すればいいんですか?
826:デフォルトの名無しさん
08/03/19 01:08:27
>>825
3と23を掛けた後、最大公約数で割る。
827:デフォルトの名無しさん
08/03/19 01:24:32
#include <stdio.h>
#include <math.h>
int main(void)
{
int i, amari = 3;
for(i = 0; i < 15; i++)
{
amari = int(pow((double)amari, 10.0)) % 23;
}
printf("%d", amari);
return 0;
}
828:デフォルトの名無しさん
08/03/19 12:34:54
#include <stdio.h>
int main(void)
{
const int a = 3, b = 23;
int i = b;
while (i % a != 0) i += b;
printf("%d\n", i);
return 0;
}
829:ぼるじょあ ◆yBEncckFOU
08/03/24 06:50:44
>>824
(・3・) エェー 出遅れたYO!
>>827 は有効桁数を超える可能性があるYO!
(3**10 も 8**10 も 2**31 以上じゃないから大丈夫だけど)
#include<stdio.h>
int main(void){
int i, j;
int result=1, mul=3;
for(j=0;j<15;j++){
for(i=0;i<10;i++) result=(result*mul)%23;
mul=result;
}
printf("%d\n", result);
return 0;
}
830:デフォルトの名無しさん
08/03/25 00:53:01
1] 授業単元:プログラミング
[2] 問題文(含コード&リンク):URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
[3.1] OS:windowsXP
[3.2] コンパイラ名とバージョン: visual studio 2005
[3.3] 言語:C言語
[4] 期限:2008年3月25日午後1時
他スレでも聞いてみたのですが結局不合格となってしまいました
よろしくお願いします。
[5] その他の制限:なし
831:ぼるじょあ ◆yBEncckFOU
08/03/25 00:58:59
>>830
(・3・) エェー なんか処理内容見落としてるYO!
> if ((imonths >2) && ((iyear % 4 == 0) && ((iyear % 100 !=0) || (iyear % 400 == 0)))) {
の
(imonths >2)
はどこいったんだYO!
832:デフォルトの名無しさん
08/03/25 01:06:36
妹なら俺のちんぽしゃぶってるが
833:デフォルトの名無しさん
08/03/25 23:19:05
>>831
忘れてました・・・ありがとうございますw
834:デフォルトの名無しさん
08/03/25 23:37:06
>>832
忘れてました・・・ありがとうございますw
835:デフォルトの名無しさん
08/04/03 01:55:14
1] 授業単元:プログラミング
[2] 問題文(含コード&リンク):URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
[3.1] OS:windowsXP
[3.2] コンパイラ名とバージョン: visual studio 2005
[3.3] 言語:C言語
[4] 期限:2008年4月4日
以前教えてもらった問題の続きで申し訳ないのですが
ヨロシクおねがいします。
[5] その他の制限:なし
836:デフォルトの名無しさん
08/04/03 02:18:43
>あとこのソースって前年度の総日数(365xyear-1)とかがぬけてますよね?
質問してるところのループだけじゃなくて、その前のループもわかってないじゃんw
837:デフォルトの名無しさん
08/04/03 08:15:45
で?
838:デフォルトの名無しさん
08/04/03 19:13:36
>>835
まずはインデントそろえろよw
839:839
08/04/12 16:12:38
[1] 授業単元:プログラム
[2] 問題文(含コード&リンク):URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
[3.1] OS:Windows XP
[3.2] コンパイラ名とバージョン:visual studio 2003
[3.3] 言語: C言語
[4] 期限:2008年4月14日8:00
[5] その他の制限:C言語入門書をやったぐらいの初心者ですので
なるべく簡単にしてくれるとありがたいです.
どうぞよろしくお願いします orz
840:ぼるじょあ ◆yBEncckFOU
08/04/12 18:01:36
(・3・) エェー 全然初心者用の問題じゃないお
841:ぼるじょあ ◆yBEncckFOU
08/04/13 14:31:03
>>839
(・3・) エェー 問題文の意味が分からないYO!
842:839
08/04/13 18:14:42
URLリンク(kansai2channeler.hp.infoseek.co.jp)
こんな感じにしたいです。たぶん説明が下手で、すいません。
どうかお力を貸してください。お願いします
843:839
08/04/14 13:00:50
期限を今日の8:00までと書いてますが期限を延ばしてもらったので、
どうぞ教えていただけないでしょうか
844:homoじょあ ◆5OLf4yFnuM
08/04/15 01:34:46
(・3・) エェー 期間が、明日明後日だと僕は無理だYO
もっと余裕があるならやってもいいYO
845:デフォルトの名無しさん
08/04/15 12:05:41
期日が短くてすいません orz
では>>842のプログラムをもっと簡単にはできないでしょうか?
お願いします
846:デフォルトの名無しさん
08/04/15 14:42:48
(・3・) エェー これの前後を参考にしてみるのはどうYO
スレリンク(tech板:731番)n
847:デフォルトの名無しさん
08/04/15 22:45:58
マルチポストして解決したんなら、こっちでも報告するのが筋だろ。
848:デフォルトの名無しさん
08/04/15 23:08:40
はい仰る通りですね、すいません。 orz
いいわけになりますが、やってもらったプログラムの理解とフローチャートを作ろうとしていたもの
ですから報告が遅れました。そして私の宿題を手伝っていただきありがとうございました。
849:デフォルトの名無しさん
08/04/17 21:06:36
[1] 授業単元: プログラム入門
[2] 問題文(含コード&リンク): 整数aにデータを6つ入力し、偶数、奇数の個数を求めよ
[3] 環境
[3.1] OS: WindowsXP
[3.2] コンパイラ名とバージョン: visual studio 2005
[3.3] 言語: C
[4] 期限: 2008年4月18日12:00まで
[5] その他の制限: 初心者レベルです、Whileやfor、一次元配列までしか・・・
よろしくお願いします。
850:デフォルトの名無しさん
08/04/17 21:24:51
#include <stdio.h>
int main(void)
{
int data[6], i, kisuu=0, guusuu=0;
for(i=0;i<6;i++)
{
printf("%d番目のデータを入力してください:",i);
scanf("%d",&data[i]);
}
for(i=0;i<6;i++)
{
if(data[i]%2==1)kisuu++;
else guusuu++;
}
printf("奇数は%d個、偶数は%d個です",kisuu,guusuu);
return 0;
}
851:デフォルトの名無しさん
08/04/18 00:13:28
>>850様
ありがとうございます!助かりました〜。
852:デフォルトの名無しさん
08/04/21 08:24:26
1] 授業単元:プログラミング
[2] 問題文(含コード&リンク):URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
[3.1] OS:windowsXP
[3.2] コンパイラ名とバージョン: visual studio 2005
[3.3] 言語:C言語
[4] 期限:2008年4月22日
問題 このプログラムを利用して今年のカレンダーを表示させる
よろしくお願いします。
[5] その他の制限:なし
853:ぼるじょあ ◆yBEncckFOU
08/04/21 13:58:43
>>852
(・3・) エェー 元のプログラムが間違ってるYO!
ツェラーの公式使えYO!
854:デフォルトの名無しさん
08/04/21 17:06:15
ツェラーの公式を使うことが、そんなに辛い(つぇらい)のかね?ん?
855:デフォルトの名無しさん
08/04/21 18:00:39
>>852
URLリンク(kansai2channeler.hp.infoseek.co.jp)
ツェラーの公式を使ったYO! っつか、曜日の配列に "日" が入ってなかったり
何の日数の合計だか分からんかったから、その辺は変更しちゃったYO!
856:デフォルトの名無しさん
08/04/27 14:24:51
[1] 授業単元: プログラミング実習
[2] 問題文(含コード&リンク):
再帰処理によって、作成した迷路空間を探索するプログラムを作成せよ。
指定された構造体を使用する既存のものの変更は認めないが、変数の追加等は可。
また戻りあり経路と戻りなし経路の両方を表示する
与えられたコードの一部 URLリンク(kansai2channeler.hp.infoseek.co.jp)
迷路データ URLリンク(kansai2channeler.hp.infoseek.co.jp)
* : 壁
0 : 通路
8 : 通路 & スタート
9 : 通路 & ゴール
迷路空間は,必ず長方形であることを前提とする.
[3] 環境
[3.1] OS: WindowsXP
[3.2] borlandC++
[3.3] C言語
[4] 期限: 4/28 13000まで
[5] その他の制限: 特になし
よろしくお願いします
857:デフォルトの名無しさん
08/04/27 18:53:51
[1] 授業単元:データ構造とアルゴリズム
[2] 問題文(含コード&リンク):体育館問題を列挙で解け。
・入力・・・最初に部活の数 n (0 <= n <= 100)が与えられる。
si(部活の活動開始時間),fi(部活の活動終了時間)の順に n 個の整数の組が与えられる。 (0 <= si <= 9999, 1 <= fi <= 10000, si < fi)
・出力・・・活動可能な部活の最大数を出力
Sample Input
n = 5
si fi
0 5
13 20
15 27
4 10
25 30
Sample Output 3
[3] 環境
[3.1] OS: WindowsXP
[3.2] Borland C++
[3.3] 言語:C++
[4] 期限: [2008年5月2日17:00まで]
[5] その他の制限:特にありません
よろしくお願いしますm(_ _)m
858:デフォルトの名無しさん
08/04/27 19:53:14
[1] 授業単元:プログラミング実験(ソフト開発)
[2] 問題文(含コード&リンク):
下記の機能を持つ原始的なペイントソフトの作成をせよ。最低でも1.2は必須の機能である。
1.直線の描画
左ボタンを押しながらマウスを移動させ、左ボタンを離すと、左ボタンを押した座標から離した座標までの直線を描画する。
この際、移動最中の過程を消すためのXORペンを使用する。moveto,linetoという関数を用いる。
2.ラバーバンド
右ボタンを押しながらマウスを移動すると、右ボタンを押した座標とマウスの現座標を頂点とする矩形を描写する。
3.ハイライト
描いた直線の先端にマウスカーソルを合わせると、端点が強調される。
4.右ドラッグ選択
描いた直線をラバーバンドで囲み、右クリックを離すと、ラバーバンド内の直線の端点が強調される。
[3] 環境
[3.1] OS:Windows XP
[3.2] Visual C++ 2005(or2008) Express Edition
[3.3] 言語:C++
[4] 期限: 2008年5月4日まで
[5] その他の制限:Windowsフォームアプリケーションで作成。
1.2の機能を持つものであれば十分すぎるほど十分です。
ぜひお力添えしていただければと思います。よろしくお願いします。
859:デフォルトの名無しさん
08/04/27 20:10:45
>>857,>>858
共にマルチ
860:デフォルトの名無しさん
08/04/28 12:50:17
はわわ〜、ってネタが古いですぅ〜?
861:デフォルトの名無しさん
08/05/20 14:01:27
[1] 授業単元: C言語
[2] 問題文:文字列s1の中から文字列s2に含まれる文字を取り除く.関数の戻り値は文字列s1(の先頭を指すポインタ値).
テストプログラムでは,文字列s2は固定でも構わない.しかし,関数の仕様としては,s1とs2の両方を引数にする.できるならば,s2もキーボードから入力できるようにする.
s1: "This is a pen."
s2: "sp."
↓
s1: "Thi i a en"
[3] 環境
[3.1] OS:LINUX
[3.2] コンパイラ名とバージョン: gcc
[3.3] 言語:C
[4] 期限: 2008/05/026に提出
C言語全然分からなくて困ってます。どうかよろしくお願いします。
862:ぼるじょあ ◆yBEncckFOU
08/05/20 14:12:04
>>861
(・3・) エェー 久々だYO!
#include <stdio.h>
unsigned char *hoge(unsigned char *s1, const unsigned char *s2){
int i, j, remove_flag[256]={0};
for(i=0;s2[i];i++) remove_flag[s2[i]]=1;
for(i=j=0;s1[i];i++) if(!remove_flag[s1[i]]) s1[j++]=s1[i];
s1[j]='\0';
return s1;
}
int main(void){
char s1[1024]="", s2[1024]="sp.";
fgets(s1, sizeof(s1), stdin);
puts(s1);
hoge(s1, s2);
puts(s1);
return 0;
}
863:デフォルトの名無しさん
08/05/20 14:17:26
#include <stdio.h>
#include <string.h>
// s1にs2[some]が存在したら詰めると言う横着アルゴリズム。
// s1[some]がs2中に存在したら詰めると言う戦略のほうが無難かと思われる。
static void removeChars(char * s1, const char * s2)
{
for (const char * s2p = s2; * s2p != '\0'; ++s2p)
for (char * p; (p = strchr(s1, * s2p)) != NULL; strcpy(p, p + 1)) ;
}
// 以下はテスト用サンプル。提出に当たっては適当に修正されたし。
int main(int argc, char ** argv)
{
removeChars(argv[1], argv[2]);
puts(argv[1]);
return 0;
}
864:デフォルトの名無しさん
08/05/20 16:31:42
strcpy(p, p + 1)
これって未定義じゃねーの?
865:デフォルトの名無しさん
08/05/20 16:47:06
【質問テンプレ】
[1] 授業単元: プログラミング
[2] 問題文(含コード&リンク):
キーボードから文字列を入力し、それを逆順に表示するプログラムを作成せよ。
表示には必ずポインタを用いること。
[3] 環境
[3.1] OS: (Windows xp
[3.2] コンパイラ名とバージョン: Cl
[3.3] 言語: C言語
[4] 期限:2008年5月22日hh:17時
[5] その他の制限:
文字列の長さを知る必要があるので工夫する.
ポインタに最初どこを向けさせて、どこまでいったら表示を終えるかを考えること。
よろしくお願いします。
866:863
08/05/20 17:00:13
// >864の指摘も尤もなので、修正した。
// ついでに、s1[some]がs2中に存在したらコピー元をずらして、毎回一文字だけコピーする戦略に。
// これって、中のwhileの行を取り除いてp = s1をp = s2にしたらstrcpy()だ。
//
static void removeChars(char * s1, const char * s2)
{
char * p = s1;
do {
while (* p != '\0' && strchr(s2, * p)) ++p;
* s1++ = * p;
} while (* p++ != '\0');
}
867:マイク ◆yrBrqfF1Ew
08/05/20 17:57:22
アルエェー
ぼるじょあってまだいたのかYO!
健康なのかYO!
868:デフォルトの名無しさん
08/05/20 18:04:52
>>865
#include <stdio.h>
int main(void)
{
char str[256], *p;
scanf("%s", str);
for(p=str; *p; p++);
while(p-->str) putchar(*p);
return 0;
}
869:デフォルトの名無しさん
08/05/20 18:10:32
せめてscanf("%255s", str)にしようよ。
870: ◆g/ZMVdytmo
08/05/20 22:18:53
[1] 授業単元: C言語 for文
[2] 問題文(含コード&リンク): URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
[3.1] OS: WindowsXP
[3.2] コンパイラ名とバージョン: CygnusVer.2.02.1
[3.3] 言語: C
[4] 期限: ([2008年5月22日17:00まで]
[5] その他の制限: 2問別々に組む。for文使用。
2問内包ですが、よろしくお願いします。
871:865
08/05/20 22:49:45
>>868様
ありがとうございます!
872:ぼるじょあ ◆yBEncckFOU
08/05/20 23:57:49
>>870
(・3・) エェー でけたYO!
#include<stdio.h>
int main(void){
int i, j, n;
printf("段数を入力してください:");
scanf("%d", &n);
for(i=0;i<n;i++){
for(j=0;j<n-i;j++) printf("*");
printf("\n");
}
return 0;
}
#include<stdio.h>
int main(void){
int i, j, n;
printf("段数を入力してください:");
scanf("%d", &n);
for(i=0;i<n;i++){
for(j=0;j<n-1-i;j++) printf(" ");
for(j=0;j<=i;j++) printf("*");
printf("\n");
}
return 0;
}
873: ◆g/ZMVdytmo
08/05/21 00:12:59
ぼるじょあ氏超絶感謝!!
意外とシンプルワラタww
874:デフォルトの名無しさん
08/05/21 11:00:12
>>862
どうもありがとうございます。
どうやら条件があるみたいで「配列版」と「ポインタ版」 をつくり,それらの動作をテストするためのプログラムを作成する.
どの関数も,与えられた文字列に何らかの加工を施すものである「配列版」とは,関数内の文字列に対する処理を配列的表現を使って記述したものである.文字列sの中のある文字にアクセスする場合に,s[i]という表現を用いる.
「ポインタ版」とは,関数内の文字列に対する処理をポインタ使って記述したものである. 関数内には,全く配列的表現が現れないように書く.単に,配列版の s[i] を *(s+i) に置き換えるだけではダメで,ポインタ変数の値を変化させて文字列を走査するように記述する.
なんか面倒くさくて申し訳ないですが、よろしくお願いします。
875:デフォルトの名無しさん
08/05/21 11:26:33
[1] 授業単元: C言語 for
[2] 問題文(含コード&リンク): 整数の個数を読み込み、その個数分の整数を
読み込み、読み込んだ整数の最大値を求めるプログラムを作れ。
整数の個数: 3
No.1: 6
No.2: 3
No.3: 4
最大値は 6 です
[3] 環境
[3.1] OS: WINDOWS XP
[3.2] コンパイラ名とバージョン: Cl
[3.3] 言語: C
[4] 期限: 2008年5月21日19:00
[5] その他の制限: for文を使う事。
お願いしますm(__)m
876:ぼるじょあ ◆yBEncckFOU
08/05/21 11:29:57
>>874
(・3・) エェー そういうことは先に言えYO!
#include <stdio.h>
#include <string.h>
unsigned char *hoge(unsigned char *s1, const unsigned char *s2){
char *src, *dest;
for(src=dest=s1;*src;src++){
if(!strchr(s2, *src)) *dest++=*src;
}
*dest='\0';
return s1;
}
int main(void){
char s1[1024]="", s2[1024]="sp.";
fgets(s1, sizeof(s1), stdin);
puts(s1);
hoge(s1, s2);
puts(s1);
return 0;
}
次ページ最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
4354日前に更新/401 KB
担当:undef