第 章 Q-1 3 int a =,b =,c = ; printf("%d\t%d\t%d",a,b,c); Q-2 3 int a = -; double b =.2; char c = 'G'; printf("%d\t%.2f\t%c",a,b,c); Q-3 3 int a = 0,b =

Size: px
Start display at page:

Download "第 章 Q-1 3 int a =,b =,c = ; printf("%d\t%d\t%d",a,b,c); Q-2 3 int a = -; double b =.2; char c = 'G'; printf("%d\t%.2f\t%c",a,b,c); Q-3 3 int a = 0,b ="

Transcription

1 楽しく学べる C 言語 演習問題解答 第 1 章 ( 要点のみ ) Q1-1 コンパイラ型はプログラムの実行速度が速いが, インタプリタ型は実行速度が遅い. しかし, プログラムに対して改変を行うような場合には, コンパイラ型よりもインタプリタ型の方が手軽にできる. Q1-2 exe ファイルは 0 と 1 の機械語で書かれているファイルであり, その実行のためにはライブラリファイルを要することもある. Q1-3 Java,Perl,PHP,JavaScript,Ruby 等. 第 2 章 ( 要点のみ ) Q2-1 C++ 言語は従来の仕様に加えて, オブジェクト指向の概念が取り入れられている言語である. Q2-2 フリーソフトは基本的に無料で使用に制限がないソフトを言う. これに対し, シェアウェアは有料のソフトであり, 料金を支払わないと使用できない. しかし, 初めは試用期間が設けられていたり, 一 部の機能が制限されている状態等の条件付きで最初は料金を払わなくても使用できる場合が多い. 第 3 章 Q3-1 3 printf(" 機械語 \n アセンブリ言語 \n 高水準言語 "); 1 Q3-2 3 printf("a\nb\tc\\d\?e\'f\""); Q3-3 3 printf("a\n\tb\n\t\tc\n\t\t\td\n\t\t\t\te"); Q3-3 printf("a\t\t\t\tb\n\tc\t\td\n\t\te\n"); printf("\tf\t\tg\nh\t\t\t\ti");

2 第 章 Q-1 3 int a =,b =,c = ; printf("%d\t%d\t%d",a,b,c); Q-2 3 int a = -; double b =.2; char c = 'G'; printf("%d\t%.2f\t%c",a,b,c); Q-3 3 int a = 0,b = 000,c = 00000; printf(" 変数に代入されている値は %d と %d と %d です ",a,b,c); 2 Q- 3 int a =,b = ; printf("%c は %d 番目で %c は %d 番目です ",a,a,b,b); Q- 3 char a = ' '; printf("%c は %d 番目です ",a,a);

3 Q- 3 int a = ; double b = 3.; printf(" 変数に代入した値は %f と %d です ",a,b); /* 変換指定子の誤りである 変数 a の変換指定子は %d で変数 b の変換指定子は %f でなければならない */ Q- 3 double pi = ; printf("πの値は %.30f です ",pi); 第 章 Q-1 3 int teihen = ; int takasa = 3; double menseki; menseki = teihen * takasa / 2.0; printf(" 底辺 %d 高さ %d の三角形の面積は %.1f です ",teihen,takasa,menseki); 3 Q-2 3 int goukei; double heikin; goukei = ; heikin = goukei /.0; printf(" これらのデータの合計は %d で平均は %f です ",goukei,heikin);

4 Q-3 3 int kyori = 300; double meter; meter = kyori * 300 / 33.0; printf("%d ヤードは %fm です ",kyori,meter); Q- 3 int hankei = ; double hyoumenseki,taiseki; double pi = 3.2; hyoumenseki = * pi * hankei * hankei; taiseki =.0 / 3 * pi * hankei * hankei * hankei; printf(" 半径 %d の球の表面積は %f で体積は %f です ",hankei,hyoumenseki,taiseki); Q- 3 double R; R = 1 / (( 1.0 / ) + ( 1.0 / ) + ( 1.0 / ) + ( 1.0 / )); printf(" 合成抵抗 R は %f です ",R); Q- 2 #include<math.h> 3 main() int yzahyou; yzahyou = pow(3,) - 2 * pow(3,2) - 2; printf("x 座標が 3 の時の y 座標の値は %d です ",yzahyou);

5 Q- 2 #include<math.h> 3 main() double kyori; kyori = sqrt(( 3-1 ) * ( 3-1 ) + ( 3 - ) * ( 3 - )); printf(" 点 1, と点 3,3 の距離は %f です ",kyori); Q- 2 #include<math.h> 3 main() int a =, b =, kakudo = 0; double radian,menseki; double pi = 3.; radian = kakudo * pi / ; menseki = 1 / 2.0 * a * b * sin(radian); printf("a=%d b=%d で挟角が %d 度の三角形の面積は %.f です ",a,b,kakudo,menseki); Q- 2 #include<math.h> 3 main() double sahen,uhen; sahen = log(); uhen = log() / log(); printf(" 等式の左辺は %f で 右辺は %f です ",sahen,uhen);

6 Q- 3 int a =, b = 3; int shou,amari; shou = a / b; amari = a - shou * b; printf("%d %d の余りは %d です ",a,b,amari); 第 章 Q-1 3 int joutei,katei,takasa; double menseki; printf(" 台形の面積を算出します \n 上底を入力して下さい "); scanf("%d",&joutei); printf(" 下底を入力して下さい "); scanf("%d",&katei); printf(" 高さを入力して下さい "); scanf("%d",&takasa); 1 menseki = ( joutei + katei ) * takasa / 2.0; 1 1 printf(" 上底 %d 下底%d 高さ%d の台形の面積は %.1f です ",joutei,katei,takasa,menseki); 1 Q #include<stdio.h> main() double kouti,menseki; printf(" 何反の耕地面積ですか "); scanf("%lf",&kouti); menseki = kouti * 300 * 3.30; printf(" 耕地面積は %fm^2 です ",menseki);

7 Q #include<stdio.h> main() int x; double y; printf("x+y-=0 の x 座標を入力して下さい "); scanf("%d",&x); y = ( - * x ) /.0; printf("x 座標が %d の y 座標は %f です ",x,y); Q #include<stdio.h> main() int data1,data2,data3; double tyouwa; printf(" 調和平均を算出します \n1 つめのデータを入力して下さい "); scanf("%d",&data1); printf("2 つめのデータを入力して下さい "); scanf("%d",&data2); printf("3 つめのデータを入力して下さい "); scanf("%d",&data3); tyouwa = 1 / ((( 1.0 / data1 ) + ( 1.0 / data2 ) + ( 1.0 / data3 )) / 3 ); printf(" データ %d %d %d の調和平均は %f です ",data1,data2,data3,tyouwa); Q- 2 #include<math.h> 3 main() int x; double V; printf(" 正八面体の体積を算出します \n1 辺の長さを入力して下さい "); scanf("%d",&x); V = 1.0 / 3 * sqrt(2) * pow(x,3); printf("1 辺が %d の正八面体の体積は %f",x,v);

8 Q- 2 #include<math.h> 3 main() int a,b,c; double s,t; printf(" 三角形の面積を算出します \n1 つめの辺の長さを入力して下さい "); scanf("%d",&a); printf("2 つめの辺の長さを入力して下さい "); scanf("%d",&b); printf("3 つめの辺の長さを入力して下さい "); scanf("%d",&c); 1 1 s = ( a + b + c ) / 2.0; 1 T = sqrt( s * ( s - a ) * ( s - b ) * ( s - c )); 1 1 printf("3 辺の長さが %d,%d,%d の三角形の面積は %f です ",a,b,c,t); 1 Q- 2 #include<math.h> 3 main() int a,b,theta; double radian,x; double pi = 3.2; printf(" 三角形の 1 辺の長さを入力して下さい "); scanf("%d",&a); printf(" もう 1 辺の長さを入力して下さい "); scanf("%d",&b); printf(" 挟角の角度を入力して下さい "); 1 scanf("%d",&theta); 1 1 radian = pi * theta / ; 1 x = sqrt( a * a + b * b - 2 * a * b * cos(radian)); 1 1 printf(" 辺 x の長さは %f です ",x);

9 Q- 2 #include<math.h> 3 main() int v0,theta,t; double radian,x,y; double pi = 3.2,g =.0; printf(" 初速度 v0 を入力して下さい "); scanf("%d",&v0); printf(" 角度を入力して下さい "); scanf("%d",&theta); printf(" 時間を入力して下さい "); 1 scanf("%d",&t); 1 1 radian = pi * theta / ; 1 x = v0 * cos(radian) * t; 1 y = v0 * sin(radian) * t - 1 / 2.0 * g * t * t; 1 printf(" 水平方向の位置 x は %f 垂直方向の位置 y は %f です ",x,y); Q- 2 #include<math.h> 3 main() int data1,data2,data3; double heikin,hensa1,hensa2,hensa3,bunsan,hyoujun; printf(" 標準偏差を算出します \n1 つめのデータを入力して下さい "); scanf("%d",&data1); printf("2 つめのデータを入力して下さい "); scanf("%d",&data2); printf("3 つめのデータを入力して下さい "); scanf("%d",&data3); 1 1 heikin = ( data1 + data2 + data3 ) / 3.0; 1 hensa1 = data1 - heikin; 1 hensa2 = data2 - heikin; 1 hensa3 = data3 - heikin; 1 bunsan = ( pow( hensa1, 2 ) + pow( hensa2, 2 ) + pow( hensa3, 2 )) / 3.0; hyoujun = sqrt( bunsan ); printf(" データ %d,%d,%d の標準偏差は %f です ",data1,data2,data3,hyoujun);

10 第 章 Q #include<stdio.h> main() Q int seisu; printf(" 整数を入力して下さい "); scanf("%d",&seisu); if ( seisu > 0 ) printf(" 正の数です "); else if ( seisu < 0 ) else #include<stdio.h> main() int seisu,amari; printf(" 負の数です "); printf(" ゼロです "); printf(" 整数を入力して下さい "); scanf("%d",&seisu); amari = seisu % 2; if ( seisu == 0 ) printf(" ゼロです "); else if ( amari == 0 ) else printf(" 偶数です "); printf(" 奇数です ");

11 Q Q #include<stdio.h> main() int a,b,c,d; printf("2 次方程式の解の判別をします \n 係数 a を入力して下さい "); scanf("%d",&a); printf(" 係数 b を入力して下さい "); scanf("%d",&b); printf(" 係数 c を入力して下さい "); scanf("%d",&c); D = b * b - * a * c; if ( D > 0 ) printf(" 異なる 2 つの実数解を持ちます "); else if ( D == 0 ) printf(" 重解を持ちます "); else printf(" 実数解を持ちません "); #include<stdio.h> main() int x,y,sa; printf("1 つめの数字を入力して下さい "); scanf("%d",&x); printf("2 つめの数字を入力して下さい "); scanf("%d",&y); if ( x > y ) sa = x - y; printf(" 差は %d です ",sa); else if ( y > x ) sa = y - x; printf(" 差は %d です ",sa); else printf(" 同じ数です ");

12 Q- 3 int kakaku,kosuu,goukei; printf(" 商品の価格を入力して下さい "); scanf("%d",&kakaku); printf(" 購入個数を入力して下さい "); scanf("%d",&kosuu); goukei = kakaku * kosuu; if ( kosuu < ) 1 1 printf(" 合計金額は %d 円です ",goukei); 1 1 else if ( kosuu < ) 1 1 goukei = goukei * 0.; printf(" 合計金額は %d 円です ",goukei); else if ( kosuu < 30 ) 2 goukei = goukei * 0.; 2 printf(" 合計金額は %d 円です ",goukei); 2 2 else if ( kosuu < 0 ) 2 2 goukei = goukei * 0.; 30 printf(" 合計金額は %d 円です ",goukei); else if ( kosuu < 0 ) 33 3 goukei = goukei * 0.; 3 printf(" 合計金額は %d 円です ",goukei); 3 3 else 3 3 goukei = goukei * 0.; 0 printf(" 合計金額は %d 円です ",goukei); 1 2

13 Q- 3 int x,y,z; printf("1 つめの整数を入力して下さい "); scanf("%d",&x); printf("2 つめの整数を入力して下さい "); scanf("%d",&y); printf("3 つめの整数を入力して下さい "); scanf("%d",&z); if ( x >= y && z >= y ) 1 1 printf(" 最も小さい数字は %d です ",y); else if ( x >= y && y >= z ) 1 printf(" 最も小さい数字は %d です ",z); else 2 printf(" 最も小さい数字は %d です ",x); 2 2 Q- 3 int jikan; printf(" 現在の時間を入力して下さい "); scanf("%d",&jikan); if ( jikan <= jikan >= 1 ) printf(" こんばんは "); else if ( jikan <= ) 1 1 printf(" おはようございます "); 1 1 else 1 1 printf(" こんにちは ");

14 Q- 2 #include<math.h> 3 main() int a,b,c,d; double kai1,kai2; printf(" 係数 a を入力して下さい "); scanf("%d",&a); printf(" 係数 b を入力して下さい "); scanf("%d",&b); printf(" 係数 c を入力して下さい "); scanf("%d",&c); 1 1 if ( a == 0 && b == 0 ) 1 1 printf(" 解はありません "); 1 1 else if ( a == 0 ) kai1 = (double)-c / b; printf(" 解は %f です ",kai1); 2 else 2 2 D = b * b - * a * c; 2 2 if ( D < 0 ) 2 30 printf(" 実数解を持ちません "); else if ( D >= 0 ) 33 3 kai1 = ( -b + sqrt(d)) / ( 2 * a ); 3 kai2 = ( -b - sqrt(d)) / ( 2 * a ); 3 if ( D == 0 ) 3 3 printf(" 解は重解で %f です ",kai1); 3 0 else 1 2 printf(" 解は %f と %f です ",kai1,kai2); 3 1

15 Q- 3 int seisuu,keta3,keta2,keta1,stock,flag1,flag2,flag3; printf("3 桁の整数を入力して下さい "); scanf("%d",&seisuu); keta3 = seisuu / 0; keta2 = ( seisuu - keta3 * 0 ) / ; keta1 = seisuu - keta3 * 0 - keta2 * ; if ( keta3 < keta2 ) 1 1 if ( keta2 < keta1 ) 1 1 stock = keta3 * 0 + keta2 * + keta1; 1 1 else stock = keta3 * 0 + keta1 * + keta2; 2 else if ( keta1 < keta2 ) 2 2 if ( keta2 < keta3 ) 2 2 stock = keta1 * 0 + keta2 * + keta3; 2 30 else stock = keta1 * 0 + keta3 * + keta2; else 3 3 if ( keta1 < keta3 ) 3 3 stock = keta2 * 0 + keta1 * + keta3; 0 1 else 2 3 stock = keta2 * 0 + keta3 * + keta1; printf(" 並べ替えられた整数は %d です ",stock); 1

16 第 章 Q-1 3 int tyotiku = 00; int wa = 0; int count; for ( count = 0; wa < 00000; count++ ) wa = wa + tyotiku; printf("%d ヶ月目に %d 円貯蓄できます ",count,wa); Q-2 3 int ippankou = 2; int wa = 0; int count; for ( count = 1; count <= 0; count++ ) printf("%d\t",ippankou); wa = wa + ippankou; ippankou = ippankou + ; 1 printf(" この数列の和は %d です ",wa); 1 1 Q-3 3 double ippankou = 0.0, wa = 0.0; while ( wa < ) ippankou = ippankou + 0.2; wa = wa + ippankou; printf(" この数列の和が 以上になる時の一般項は %.1f です ",ippankou);

17 Q #include<stdio.h> main() int ippankou = 01; int wa = 0; int zouka = 1; while ( wa >= 0 ) ippankou = ippankou - zouka; wa = wa + ippankou; zouka++; printf(" この数列の和が負になる時の一般項は %d です ",ippankou); Q #include<stdio.h> main() int x,y,count; int bekijou = 1; printf("x の y 乗を算出します \nx を入力して下さい "); scanf("%d",&x); printf("y を入力して下さい "); scanf("%d",&y); for ( count = 1; count <= y; count++ ) bekijou = bekijou * x; printf("x の y 乗は %d です ",bekijou); 1 Q #include<stdio.h> main() int a0,d,nankou,count; printf(" 初項を入力して下さい "); scanf("%d",&a0); printf(" 公差を入力して下さい "); scanf("%d",&d); printf(" 第何項まで表示しますか "); scanf("%d",&nankou); for ( count = 1; count <= nankou; count++ ) printf("%d\t",a0); a0 = a0 + d;

18 Q #include<stdio.h> main() int ippankou = 1, wa = 0, zouka = 2; int count; for ( count = 1; count <= 0; count++ ) printf("%d\t",ippankou); wa = wa + ippankou; ippankou = ippankou + zouka; zouka = zouka + 2; printf(" この数列の和は %d です ",wa); Q #include<stdio.h> main() int ippankou = 2, wa = 0, tousa = 2, hugou = -1; int count; for ( count = 1; count <= 0; count++ ) printf("%d\t",ippankou); wa = wa + ippankou; tousa = tousa + 3; ippankou = tousa * hugou; hugou = hugou * -1; printf(" この数列の和は %d です ",wa); 1 Q #include<stdio.h> main() int shokou = 0, daini = 1; int daisan,count; printf("%d\t%d\t",shokou,daini); for ( count = 3; count <= 30; count++ ) daisan = shokou + daini; printf("%d\t",daisan); shokou = daini; daini = daisan;

19 Q- 3 int bunbo = 1, hugou = 1; double wa = 0.0; int count; double ippankou,pi; for ( count = 1; count <= 00; count++ ) ippankou = 1.0 / bunbo * hugou; wa = wa + ippankou; 1 pi = * wa; 1 1 printf("%f\t",pi); 1 bunbo = bunbo + 2; 1 hugou = hugou * -1; 1 Q- 3 int count1,count2; for ( count1 = 1; count1 <= ; count1++ ) for ( count2 = 1; count2 <= count1; count2++ ) printf("+"); printf("\n"); 1 1

20 Q #include<stdio.h> main() int count1,count2,count3; for ( count1 = 1; count1 <= ; count1++ ) if ( count1 <= ) count3 = count1; else count3 = - count1; for ( count2 = 1; count2 <= count3; count2++ ) printf("\n"); printf("+"); Q #include<stdio.h> main() int kingaku,gojuu,juu,go,iti; int kumiawase = 0; printf("0 円 \t 円 \t 円 \t1 円 \n"); for ( gojuu = 0; gojuu <= 1; gojuu++ ) for ( juu = 0; juu <= ; juu++ ) for ( go = 0; go <= ; go++ ) for ( iti = 0; iti <= 0; iti++ ) kingaku = 0 - ( 0 * gojuu + * juu + * go + 1 * iti ); if ( kingaku == 0 ) printf("%d\t%d\t%d\t%d\n",gojuu,juu,go,iti); iti = 1; kumiawase++; printf(" 組み合わせの数は %d です ",kumiawase);

21 第 章 Q-1 3 int suuretu[30]; int goukei = 0; int count; for (count = 0; count <= 2; count++) suuretu[count] = 2 * (count + 1); goukei = goukei + suuretu[count]; printf(" この数列の和は %d です ",goukei); 1 Q-2 3 int dataa[] = 30,,2,2,1,1,1,3,,; int datab[] =,,,,3,,2,,3,0; int kotae,count; printf(" 加算の結果は \n"); for ( count = 0; count <= ; count++ ) kotae = dataa[count] + datab[count]; printf("%d\t",kotae); 1 Q-3 3 int data[1] = 31,2,,33,,,,,,2,,,,1,; int kotae,count; printf(" 減算の結果は \n"); for ( count = 0; count <= ; count++ ) kotae = data[count] - data[count+2]; printf("%d\t",kotae);

22 Q- 3 int data[1] = 31,2,,33,,,,,,2,,,,1,; int kotae,count; printf(" 加算の結果は \n"); for ( count = 0; count <= ; count++ ) kotae = data[count] + data[1-count]; printf("%d\t",kotae); Q- 3 int data[] = 31,2,,33,,,,,,2,,,,1,,,,,,30; int count1,count2,stock; for ( count1 = 0; count1 <= 1; count1++ ) printf("%d\t",data[count1]); printf("\n を降順で並べ替えると \n"); for ( count1 = 0; count1 <= 1; count1++ ) 1 1 for ( count2 = count1 + 1; count2 <= 1; count2++ ) 1 1 if ( data[count1] < data[count2] ) 1 1 stock = data[count2]; data[count2] = data[count1]; data[count1] = stock; for ( count1 = 0; count1 <= 1; count1++ ) 2 2 printf("%d\t",data[count1]); 2 30

23 Q- 3 int data[]; int count,stock; printf(" つのデータを入力して下さい \n"); for ( count = 1; count <= ; count++ ) printf("%d つめ ",count); scanf("%d",&data[count-1]); 1 for ( count = 1; count <= ; count++ ) 1 1 if ( data[0] > data[count] ) 1 1 data[0] = data[count]; 1 printf(" 最小値は %d です ",data[0]); Q- 3 int data[] = 31,2,,33,,,,,,2,,,,1,,,,,,30; int x,y,count; int flag = 0; printf(" いくら以上ですか "); scanf("%d",&x); printf(" いくら以下ですか "); scanf("%d",&y); for ( count = 0; count <= 1; count++ ) 1 1 if ( data[count] >= x && data[count] <= y ) 1 1 printf("%d\t",data[count]); 1 flag = 1; 1 if ( count == 1 && flag == 0 ) printf(" 該当データはありません "); 2 2

24 Q- 3 int suretu[] = 2,1,,,,,,1,30,,1,2,2,2,,1,,1,,30; int count1,count2,count3,stock; for ( count1 = 1; count1 <= 1; count1++ ) stock = suretu[count1]; for ( count2 = 0; count2 < count1; count2++ ) if ( suretu[count1] < suretu[count2] ) 1 1 for ( count3 = count1-1; count3 >= count2; count3-- ) 1 1 suretu[count3 + 1] = suretu[count3]; 1 1 suretu[count2] = stock; break; 2 2 for ( count1 = 0; count1 <= 1; count1++ ) 2 2 printf("%d\t",suretu[count1]); Q- 3 int maisu[] = 000,000,00,00,0,0,,,1; int kingaku,count1,count2; printf(" 桁の金額を入力して下さい "); scanf("%d",&kingaku); for ( count1 = 0; count1 <= ; count1++ ) for ( count2 = 0; kingaku >= maisu[count1]; count2++ ) 1 kingaku = kingaku - maisu[count1]; 1 1 printf("%d 円は %d 枚 \n",maisu[count1],count2); 1 1

25 第 章 Q-1 3 int a[3][2] = 2,,1,,,2; int b[3][2] = 1,,,3,,; int kotae[3][2],kai,heya; for ( kai = 0; kai <= 2; kai++ ) for ( heya = 0; heya <= 1; heya++ ) kotae[kai][heya] = a[kai][heya] + b[kai][heya]; printf("%d\t",kotae[kai][heya]); 1 1 printf("\n"); 1 1 Q-2 3 double a[3][3] = 2.,.1,2.1,1.,3.3,1.,3.0,2.,1.; double b[3][3] = 1.,2.,.1,.,3.,2.,1.1,2.2,1.; double kotae[3][3]; int kai,heya; for ( kai = 0; kai <= 2; kai++ ) for ( heya = 0; heya <= 2; heya++ ) kotae[kai][heya] = a[kai][heya] - b[kai][heya]; 1 printf("%.1f\t",kotae[kai][heya]); 1 1 printf("\n"); 1 1 2

26 Q-3 3 int a[][],b[][],kotae[][]; int kai,heya; int m = 1,n = 0; for ( kai = 0; kai <= 2; kai++ ) for ( heya = 0; heya <= 3; heya++ ) a[kai][heya] = m; b[kai][heya] = n; 1 kotae[kai][heya] = a[kai][heya] + b[kai][heya]; 1 printf("%d\t",kotae[kai][heya]); 1 m = m + 2; 1 n++; 1 1 printf("\n"); m = m + 2; n = n + ; Q- 3 int gyoretu[3][3] = 1,2,3,,,,,,; int kai,heya; printf(" 行列 \n"); for ( kai = 0; kai <= 2; kai++ ) for ( heya = 0; heya <= 2; heya++ ) printf("%d\t",gyoretu[kai][heya]); 1 printf("\n"); 1 1 printf(" を並び替えると \n"); 1 for ( kai = 0; kai <= 2; kai++ ) 1 1 for ( heya = 0; heya <= 2; heya++ ) printf("%d\t",gyoretu[heya][kai]); printf("\n"); 2 2 2

27 Q Q #include<stdio.h> main() int a[][], b[][], kotae[][]; int m = 1, n = 0, kisoku = 1, tyousei = 1; int kai,heya; for ( kai = 0; kai <= 3; kai++ ) for ( heya = 0; heya <= 3; heya++ ) a[kai][heya] = m; b[kai][heya] = n; kotae[kai][heya] = a[kai][heya] + b[kai][heya]; printf("%d\t",kotae[kai][heya]); m = m + kisoku; n = n - kisoku; m = m - ( tyousei * kisoku ); n = n + ( tyousei * kisoku ); kisoku++; tyousei++; m = m + ; n = n + ; printf("\n"); #include<stdio.h> main() int gyoretu[3][3] = 1,2,3,,,,,,; int kai,heya; printf(" 行列 \n"); for ( kai = 0; kai <= 2; kai++ ) for ( heya = 0; heya <= 2; heya++ ) printf("%d\t",gyoretu[kai][heya]); printf("\n"); printf(" を並び替えると \n"); for ( kai = 2; kai >= 0; kai-- ) for ( heya = 2; heya >= 0; heya-- ) printf("%d\t",gyoretu[heya][kai]); printf("\n"); 2

28 Q- 3 double data[][] =.0,3.,.,2.,3.,0, 3.,3.2,3.3,3.,3.,0, 1.3,2.1,1.,1.,0.,0, 0,0,0,0,0,0 ; int kai,heya; for ( kai = 0; kai <= 2; kai++ ) 1 for ( heya = 0; heya <= ; heya++ ) 1 1 data[kai][] = data[kai][] + data[kai][heya]; for ( heya = 0; heya <= ; heya++ ) for ( kai = 0; kai <= 2; kai++ ) data[3][heya] = data[3][heya] + data[kai][heya]; for ( kai = 0; kai <= 3; kai++ ) 2 2 for ( heya = 0; heya <= ; heya++ ) 2 30 printf("%.1f\t",data[kai][heya]); printf("\n");

29 Q- 3 int a[][] = 2,3,,,,1,,,,2,3,1,2,2,,; int b[][] =,2,,,,3,3,1,1,,,,3,,3,2; int kotae[][]; int kai,heya,seki; for ( kai = 0; kai <= 3; kai++ ) for ( heya = 0; heya <= 3; heya++ ) kotae[kai][heya] = 0; 1 for ( seki = 0; seki <= 3; seki++ ) 1 1 kotae[kai][heya] = kotae[kai][heya] + a[kai][seki] * b[seki][heya]; 1 1 printf("%d\t",kotae[kai][heya]); 1 printf("\n"); 2

30 Q- 2 #include<math.h> 3 main() int zahyou[][3] = 1,3,2,2,,3,3,,3,,2,,2,3,3,3,,2,,,1,,1,2; double kyori = 0.0; double saidai = 0.0; int kai,heya,stock; for ( kai = 0; kai <= ; kai++ ) for ( heya = 0; heya <= 2; heya++ ) 1 kyori = kyori + zahyou[kai][heya] * zahyou[kai][heya]; 1 1 kyori = sqrt(kyori); 1 if ( saidai < kyori ) 1 1 saidai = kyori; stock = kai; kyori = 0.0; 2 printf(" 原点から最も離れた点は %d,%d,%d",zahyou[stock][0],zahyou[stock][1],zahyou[stock][2]); 2 printf(" で距離は %f です ",saidai); 2 30

31 Q- 2 #include<math.h> 3 main() int zahyou[][3] = 1,3,2,2,,3,3,,3,,2,,2,3,3,3,,2,,,1,,1,2; double kyori = 0.0; double saidai = 0.0; int count1,count2,heya,stock1,stock2; for ( count1 = 0; count1 <= ; count1++ ) for ( count2 = count1 + 1; count2 <= ; count2++ ) 1 for ( heya = 0; heya <= 2; heya++ ) 1 1 kyori = kyori + pow(zahyou[count1][heya] - zahyou[count2][heya],2); 1 1 kyori = sqrt(kyori); 1 if ( saidai < kyori ) saidai = kyori; stock1 = count1; stock2 = count2; 2 2 kyori = 0.0; printf(" 最も離れた 2 点は %d,%d,%d",zahyou[stock1][0],zahyou[stock1][1],zahyou[stock1][2]); 2 printf(" と %d,%d,%d",zahyou[stock2][0],zahyou[stock2][1],zahyou[stock2][2]); 30 printf(" で距離は %f です ",saidai); 31 31

32 第 章 Q-1 2 double daikei(int a, int b, int c) 3 double d; d = ( a + b ) * c / 2.0; return d; int main(void) int joutei,katei,takasa; 1 double menseki; 1 1 printf(" 台形の面積を算出します \n 上底を入力して下さい "); 1 scanf("%d",&joutei); 1 printf(" 下底を入力して下さい "); 1 scanf("%d",&katei); printf(" 高さを入力して下さい "); scanf("%d",&takasa); menseki = daikei( joutei, katei, takasa ); 2 2 printf(" 上底 %d 下底 %d 高さ %d の台形の面積は %.1f です ",joutei,katei,takasa,menseki); 2 2 return 0; 2 32

33 Q-2 2 #define PI 3. 3 double taiseki(int r) double V; V =.0 / 3 * PI * r * r * r; return V; double hyoumenseki(int r) 1 double S; 1 1 S = * PI * r * r; 1 1 return S; 1 int main(void) int hankei; 2 double X,Y; 2 2 printf(" 球の体積と表面積を算出します \n 半径を入力して下さい "); 2 scanf("%d",&hankei); 2 2 X = taiseki(hankei); 30 Y = hyoumenseki(hankei); printf(" 半径 %d の球の体積は %.f で表面積は %.f です ",hankei,x,y); 33 3 return 0; 3 33

34 Q-3 2 #include<math.h> 3 #define PI 3. double seigen(int kakudo) double radian,kekka; radian = ( kakudo * PI ) / ; kekka = sin(radian); return kekka; 1 int main(void) 1 1 int count; 1 double kotae; 1 1 for ( count = 0; count <= 0; count++ ) kotae = seigen(count); printf("%d 度の時の正弦値は %.f です \n",count,kotae); 2 2 return 0; 2 3

35 Q- 2 int merusennu(int x) 3 int count; int kekka = 1; for(count = 1; count <= x; count++ ) kekka = kekka * 2; kekka = kekka - 1; return kekka; 1 1 int main(void) 1 1 int count,kotae; 1 1 printf(" メルセンヌ数を算出します \n"); for ( count = 1; count <= 31; count++ ) kotae = merusennu(count); printf("%d\t",kotae); return 0; 2 3

36 Q- 2 int merusennu(int x) 3 int count; int kekka = 1; for(count = 1; count <= x; count++ ) kekka = kekka * 2; return kekka; 1 int main(void) 1 1 int count1,count2,kotae; 1 1 printf(" フェルマー数を算出します \n"); 1 for ( count1 = 1; count1 <= ; count1++ ) for ( count2 = 1; count2 <= count1; count2++ ) kotae = merusennu(count2); 2 2 kotae = merusennu(kotae); 2 kotae = kotae + 1; 2 printf("%d\t",kotae); return 0; 31 3

37 Q- 2 double bunsu(double x) 3 double kekka; kekka = / x; return kekka; int main(void) int count,nanjuu; 1 double kotae = 1.0; 1 1 printf(" 何重の分数を算出しますか "); 1 scanf("%d",&nanjuu); 1 1 for ( count = 1; count <= nanjuu; count++ ) kotae = bunsu(kotae); 2 kotae--; 2 2 printf(" 連分数の答えは %.f です ",kotae); 2 2 return 0; 2 3

38 Q- 2 double bunsu(double kekka,int a) 3 if ( a >= 1 ) kekka = / kekka; a--; kekka = bunsu(kekka,a); return kekka; else return kekka; int main(void) 1 1 int count,nanjuu; double kotae = 1.0; printf(" 何重の分数を算出しますか "); scanf("%d",&nanjuu); 2 2 kotae = bunsu(kotae,nanjuu); 2 kotae--; 2 2 printf(" 連分数の答えは %.f です ",kotae); 2 30 return 0; 31 3

39 Q- 2 double sessen(double a,double b) 3 double x; x = -b / a; return x; double yzahyou(double x) double y,b,z; 1 1 y = x * x - ; 1 b = y - 2 * x * x; 1 z = sessen(2*x,b); 1 1 return z; int main(void) 2 double shokiti,stock; 2 double sa = 1.0; 2 int count; 2 2 printf(" 初期値 (x) を入力して下さい "); 2 scanf("%lf",&shokiti); while ( sa >= ) stock = shokiti; 3 shokiti = yzahyou(shokiti); 3 sa = stock - shokiti; 3 printf("%.1f\n",shokiti); return 0; 0 3

Microsoft PowerPoint - 説明2_演算と型(C_guide2)【2015新教材対応確認済み】.pptx

Microsoft PowerPoint - 説明2_演算と型(C_guide2)【2015新教材対応確認済み】.pptx 情報ネットワーク導入ユニット Ⅰ C 言語 演算と型 演算 代入 演算と型 +,-,*,/,% = C 言語では 代入 の意味 vx = a + b; //a+b の結果を vx に代入 型 : int 型 ( 整数 ) double 型 ( 実数 ) 演算での型変換 ( 整数, 実数の混在 ) キャスト演算子 型を一時的に変更 書式指定 :printf("%6d n", a); 加減, 剰余演算

More information

kiso2-09.key

kiso2-09.key 座席指定はありません 計算機基礎実習II 2018 のウェブページか 第9回 ら 以下の課題に自力で取り組んで下さい 計算機基礎実習II 第7回の復習課題(rev07) 第9回の基本課題(base09) 第8回試験の結果 中間試験に関するコメント コンパイルできない不完全なプログラムなど プログラミングに慣れていない あるいは複雑な問題は 要件 をバラして段階的にプログラムを作成する exam08-2.c

More information

Microsoft PowerPoint - C言語の復習(配布用).ppt [互換モード]

Microsoft PowerPoint - C言語の復習(配布用).ppt [互換モード] if 文 (a と b の大きい方を表示 ) C 言語 Ⅰ の復習 条件判定 (if, 条件式 ) ループ (for[ 二重まで ], while, do) 配列 ( 次元 次元 ) トレース int a, b; printf( 整数 a: ); scanf( %d, &a); printf( 整数 b: ); scanf( %d, &b); //つのif 文で表現する場合間違えやすい どっちに =

More information

ゲームエンジンの構成要素

ゲームエンジンの構成要素 cp-3. 計算 (C プログラムの書き方を, パソコン演習で学ぶシリーズ ) https://www.kkaneko.jp/cc/adp/index.html 金子邦彦 1 本日の内容 例題 1. 自由落下距離四則演算例題 2. 三角形の面積浮動小数の変数, 入力文, 出力文, 代入文例題 3. sin 関数による三角形の面積ライブラリ関数 2 今日の到達目標 プログラムを使って, 自分の思い通りの計算ができるようになる

More information

Taro-プログラミングの基礎Ⅱ(公

Taro-プログラミングの基礎Ⅱ(公 0. 目次 2. プログラムの作成 2. 1 コラッツ問題 自然数 n から出発して n が偶数ならば 2 で割り n が奇数ならば 3 倍して 1 を足す操作を行う この操作を繰り返すと最後に 1 になると予想されている 問題 1 自然数 aの操作回数を求めよ 問題 2 自然数 aから bまでのなかで 最大操作回数となる自然数を求めよ 2. 2 耐久数 正整数の各桁の数字を掛け 得られた結果についても同様の操作を繰り返す

More information

8 / 0 1 i++ i 1 i-- i C !!! C 2

8 / 0 1 i++ i 1 i-- i C !!! C 2 C 2006 5 2 printf() 1 [1] 5 8 C 5 ( ) 6 (auto) (static) 7 (=) 1 8 / 0 1 i++ i 1 i-- i 1 2 2.1 C 4 5 3 13!!! C 2 2.2 C ( ) 4 1 HTML はじめ mkdir work 作業用ディレクトリーの作成 emacs hoge.c& エディターによりソースプログラム作成 gcc -o fuga

More information

Microsoft PowerPoint - 3.pptx

Microsoft PowerPoint - 3.pptx 条件分岐 ( if 文 ) 第 2 回の講義資料で出題した練習問題や演習問題の計算は, 勿論電卓でもでき, わざわざプログラムを作ってまでするほどの計算ではありませんでした. プログラムによる計算と電卓の計算の きな違いの つが, プログラムには, 条件による処理の分岐, 繰り返しがあることです. まず今回は, 条件による処理の分岐 ( 処理の切り替え と う が適切かもしれません ) の書き について学んでいきます.

More information

初歩のC言語ターミナル_2014_May.pages

初歩のC言語ターミナル_2014_May.pages C Mac OS X ( Vi Mi) Xcode CD >cd C:\Users\\Desktop gcc first.c C:\Users\\Desktop>gcc -o first first.c gcc first.c C:\Users\\Desktop>first Windows OS VisualStudio VisualStudio VS2012 CD C:\ >cd C:\Users\

More information

講習No.12

講習No.12 前回までの関数のまとめ 関数は main() 関数または他の関数から呼び出されて実行される. 関数を呼び出す側の実引数の値が関数内の仮引数 ( 変数 ) にコピーされる. 関数内で定義した変数は, 関数の外からは用いることができない ( ローカル変数 ). 一般に関数内で仮引数を変化しても, 呼び出し側の変数は変化しない ( 値渡し ). 関数内で求めた値は return 文によって関数値として呼び出し側に戻される.

More information

物質工学科 田中晋

物質工学科 田中晋 電気 機械実習 物質工学科 4 年 C 言語によるプログラミング基礎 物質工学科 Version 2.2 評価について 評価 : 演習 1~9 9 点 9 テーマ =81 点 演習 10 19 点 提出 : 1 週目に貸し出した USB メモリに自分の学籍番号のフォルダを作る 各演習の.c ファイルを指定されたファイル名で保存する ( 演習 10 については.exe ファイルも併せて保存 ) 最終週の翌週火曜日

More information

char int float double の変数型はそれぞれ 文字あるいは小さな整数 整数 実数 より精度の高い ( 数値のより大きい より小さい ) 実数 を扱う時に用いる 備考 : 基本型の説明に示した 浮動小数点 とは数値を指数表現で表す方法である 例えば は指数表現で 3 書く

char int float double の変数型はそれぞれ 文字あるいは小さな整数 整数 実数 より精度の高い ( 数値のより大きい より小さい ) 実数 を扱う時に用いる 備考 : 基本型の説明に示した 浮動小数点 とは数値を指数表現で表す方法である 例えば は指数表現で 3 書く 変数 入出力 演算子ここまでに C 言語プログラミングの様子を知ってもらうため printf 文 変数 scanf 文 if 文を使った簡単なプログラムを紹介した 今回は変数の詳細について習い それに併せて使い方が増える入出力処理の方法を習う また 演算子についての復習と供に新しい演算子を紹介する 変数の宣言プログラムでデータを取り扱う場合には対象となるデータを保存する必要がでてくる このデータを保存する場所のことを

More information

Microsoft PowerPoint - 3.ppt [互換モード]

Microsoft PowerPoint - 3.ppt [互換モード] 第 3 回簡単な計算 プリプロセッサ 1 今回の目標 定数とその型を理解する 演算子とその効果を理解する 簡単なライブラリ関数の使用法を理解する ヘロンの公式を用いて 3 角形の面積を求めるプログラムを作成する 2 ヘロンの公式 ヘロンの公式 : 3 辺の長さがわかっているときに 3 角形の面積を求める方法 d = a + b + c 2 S = d ( d a )( d b )( d c ) 3

More information

kiso2-06.key

kiso2-06.key 座席指定があります Linux を起動して下さい 第6回 計算機基礎実習II 計算機基礎実習II 2018 のウェブページか ら 以下の課題に自力で取り組んで下さい 第5回の復習課題(rev05) 第6回の基本課題(base06) 第5回課題の回答例 ex05-2.c 1. キーボードから整数値 a を入力すると a*a*a の値を出力することを繰り返すプログラムを作成しなさい 2. ただし 入力された

More information

Microsoft PowerPoint - program.ppt [互換モード]

Microsoft PowerPoint - program.ppt [互換モード] プログラミング演習 バージョン 1 担当教員 : 綴木馴 プログラムの決まりについて学ぶ おすすめする参考書 ザ C 戸川隼人サイエンス社 本日の予定 1. 授業の説明. 2. コンパイラーのインストール. プログラムの決まりについて学ぶ,P31 /* The most in C */ /* hello.c */ printf("hello,world n"); プログラムの決まり ( コメント )

More information

Microsoft PowerPoint - 4.ppt [互換モード]

Microsoft PowerPoint - 4.ppt [互換モード] 第 4 回簡単な計算 プリプロセッサ 1 今回の目標 定数を理解する 演算子とその効果を理解する 簡単なライブラリ関数の使用法を理解する ヘロンの公式を用いた3 角形の面積を求めるプログラムを作成する 2 ヘロンの公式 ヘロンの公式 : 3 辺の長さがわかっているときに 3 角形の面積を求める方法 d = a + b + c 2 S = d ( d a )( d b )( d c ) 3 定数の分類と型

More information

< 中 3 分野例題付き公式集 > (1)2 の倍数の判定法は 1 の位が 0 又は偶数 ( 例題 )1~5 までの 5 つの数字を使って 3 ケタの数をつくるとき 2 の倍数は何通りできるか (2)5 の倍数の判定法は 1 の位が 0 又は 5 ( 例題 )1~9 までの 9 個の数字を使って 3

< 中 3 分野例題付き公式集 > (1)2 の倍数の判定法は 1 の位が 0 又は偶数 ( 例題 )1~5 までの 5 つの数字を使って 3 ケタの数をつくるとき 2 の倍数は何通りできるか (2)5 の倍数の判定法は 1 の位が 0 又は 5 ( 例題 )1~9 までの 9 個の数字を使って 3 () の倍数の判定法は の位が 0 又は偶数 ~ までの つの数字を使って ケタの数をつくるとき の倍数は何通りできるか () の倍数の判定法は の位が 0 又は ~9 までの 9 個の数字を使って ケタの数をつくるとき の倍数は何通りできるか () の倍数の判定法は 下 ケタが 00 又は の倍数 ケタの数 8 が の倍数となるときの 最小の ケタの数は ( 解 ) 一の位の数は の 通り 十の位は一の位の数以外の

More information

Microsoft Word - 3new.doc

Microsoft Word - 3new.doc プログラミング演習 II 講義資料 3 ポインタ I - ポインタの基礎 1 ポインタとは ポインタとはポインタは, アドレス ( データが格納されている場所 ) を扱うデータ型です つまり, アドレスを通してデータを間接的に処理します ポインタを使用する場合の, 処理の手順は以下のようになります 1 ポインタ変数を宣言する 2 ポインタ変数へアドレスを割り当てる 3 ポインタ変数を用いて処理 (

More information

(x, y) 2. OK NG1 1

(x, y) 2. OK NG1 1 12 22 1. (x, y) 2. OK NG1 1 12 22 / sample program for a Information class DATE: 2014-12-22 convert angle unit, from radian to degree / #include / for printf() / #include / for atan2()

More information

Java 基礎問題ドリル ~ メソッドを理解する ~ 次のプログラムコードに 各設問の条件にあうメソッドを追加しなさい その後 そのメソッドが正しく動作することを検証するためのプログラムコードを main メソッドの中に追加しなさい public class Practice { // ここに各設問

Java 基礎問題ドリル ~ メソッドを理解する ~ 次のプログラムコードに 各設問の条件にあうメソッドを追加しなさい その後 そのメソッドが正しく動作することを検証するためのプログラムコードを main メソッドの中に追加しなさい public class Practice { // ここに各設問 Java 基礎問題ドリル ~ メソッドを理解する ~ 次のプログラムコードに 各設問の条件にあうメソッドを追加しなさい その後 そのメソッドが正しく動作することを検証するためのプログラムコードを main メソッドの中に追加しなさい public class Practice { // ここに各設問のメソッドを追加する public static void main(string[] args) {

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション プログラミング初級 第 7 回 2017 年 5 月 29 日 配列 ( 復習 )~ 文字列 1 配列とは 2 配列 : 複数の変数をグループとしてまとめて扱うもの 配列 変数 int data[10]; 整数型の配列 同種のデータ型を連続して確保したものを配列とよぶ = 整数がそれぞれにひとつずつ入る箱を 10 個用意したようなもの int data; 整数型の変数 = 整数がひとつ入る dataという名前の箱を用意したようなもの

More information

‚æ2›ñ C„¾„ê‡Ìš|

‚æ2›ñ C„¾„ê‡Ìš| I 8 10 10 I ( 6 ) 10 10 1 / 23 1 C ( ) getchar(), gets(), scanf() ( ) putchar(), puts(), printf() 1 getchar(), putchar() 1 I ( 6 ) 10 10 2 / 23 1 (getchar 1 1) 1 #include 2 void main(void){ 3 int

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション 2018/10/05 竹島研究室創成課題 第 2 回 C 言語演習 変数と演算 東京工科大学 加納徹 前回の復習 Hello, world! と表示するプログラム 1 #include 2 3 int main(void) { 4 printf("hello, world! n"); 5 return 0; 6 } 2 プログラム実行の流れ 1. 作業ディレクトリへの移動 $ cd

More information

Taro-リストⅠ(公開版).jtd

Taro-リストⅠ(公開版).jtd 0. 目次 1. 再帰的なデータ構造によるリストの表現 1. 1 リストの作成と表示 1. 1. 1 リストの先頭に追加する方法 1. 1. 2 リストの末尾に追加する方法 1. 1. 3 昇順を保存してリストに追加する方法 1. 2 問題 問題 1 問題 2-1 - 1. 再帰的なデータ構造によるリストの表現 リストは データの一部に次のデータの記憶場所を示す情報 ( ポインタという ) を持つ構造をいう

More information

Microsoft Word - Cプログラミング演習(3)

Microsoft Word - Cプログラミング演習(3) 第 3 回 (5/7) 5. ループ ( 繰り返し ) 1 for 文 例題 1-15 正の数 n をキーボードから入力すると,1 から n までの整数の和を出力するプログラムをつくりなさい 出力結果 1-15 2 以上の整数を入力してください! 357 1 + + 357 = 63903 考え方合計を保持する変数を long 型で宣言し, 入力した数値 n までループ処理で累積する 正しい数値が入力されたとき

More information

PowerPoint Presentation

PowerPoint Presentation 第 7 回文字列数学関数ファイルの入出力 芝浦工業大学情報工学科青木義満 今回の講義内容 文字列 文字列の配列の扱い 関数への受け渡し 数学関数の利用 平方根, べき乗, 三角関数など ファイル入出力 文字列とは? (p.0) 文字列リテラル 文字 つつ : A, B, 複数の文字の並び= 文字列 puts( ぷろぐらみんぐ入門 ); で囲まれた部分 = 文字列リテラルという 文字列リテラルとナル文字

More information

Microsoft Word - Cプログラミング演習(1)_2012

Microsoft Word - Cプログラミング演習(1)_2012 第 1 回 (4/16) 参考書 : [1] B.W. カーニハン,D.M. リッチー著 : プログラミング言語 C 第 2 版 ANSI 規格準拠, 共立出版, 1989 年. [2] 高橋麻奈著 : やさしい C 第 2 版, ソフトバンククリエイティブ, 2003 年. [3] 柴田望洋著 : 新版明解 C 言語入門編, ソフトバンククリエイティブ, 2004 年. [4] 林晴比古著 : 新

More information

4-4 while 文 for 文と同様 ある処理を繰り返し実行するためのものだが for 文と違うのは while 文で指定するのは 継続条件のみであるということ for 文で書かれた左のプログラムを while 文で書き換えると右のようになる /* 読込んだ正の整数値までカウントアップ (for

4-4 while 文 for 文と同様 ある処理を繰り返し実行するためのものだが for 文と違うのは while 文で指定するのは 継続条件のみであるということ for 文で書かれた左のプログラムを while 文で書き換えると右のようになる /* 読込んだ正の整数値までカウントアップ (for 4-4 while 文 for 文と同様 ある処理を繰り返し実行するためのものだが for 文と違うのは while 文で指定するのは 継続条件のみであるということ for 文で書かれた左のプログラムを while 文で書き換えると右のようになる /* 読込んだ正の整数値までカウントアップ (for 文 ) */ int i, no; for (i = 0; i

More information

問 2 ( 型変換 ) 次のプログラムを実行しても正しい結果が得られない 何が間違いかを指摘し 正しく修正せよ ただし int サイズが 2 バイト long サイズが 4 バイトの処理系での演算を仮定する #include <stdio.h> int main( void ) { int a =

問 2 ( 型変換 ) 次のプログラムを実行しても正しい結果が得られない 何が間違いかを指摘し 正しく修正せよ ただし int サイズが 2 バイト long サイズが 4 バイトの処理系での演算を仮定する #include <stdio.h> int main( void ) { int a = 問 1 配列の宣言整数型配列 data1 にデータが初期設定されている この配列 data1 のデータを下図のように 整数型配列 data2 に代入しなさい また data2 の内容を printf( "data2[0] = %d\n", data2[0] ); printf( "data2[5] = %d\n", data2[5] ); を用いて出力しなさい 実行結果 data2[0] = 76

More information

解答編 第 7 章実数型の計算と標準数学関数 演習問題 7.1 文法事項 1 ) 暗黙の型変換とは何か答えなさい 代入演算子 (=) や算術演算子 (+,-,*,/,%) では 2 つの演算項のデータ型が揃っている事が必要です 2 つの演算項のデータ型が異なる場合 可能ならば 演算項のデータ型を変換

解答編 第 7 章実数型の計算と標準数学関数 演習問題 7.1 文法事項 1 ) 暗黙の型変換とは何か答えなさい 代入演算子 (=) や算術演算子 (+,-,*,/,%) では 2 つの演算項のデータ型が揃っている事が必要です 2 つの演算項のデータ型が異なる場合 可能ならば 演算項のデータ型を変換 解答編 第 7 章実数型の計算と標準数学関数 演習問題 7.1 文法事項 1 ) 暗黙の型変換とは何か答えなさい 代入演算子 (=) や算術演算子 (+,-,*,/,%) では 2 つの演算項のデータ型が揃っている事が必要です 2 つの演算項のデータ型が異なる場合 可能ならば 演算項のデータ型を変換しデータ型を揃える操作が暗黙のうちに実行されます これを 暗黙の型変換と呼びます 2 ) 暗黙の型変換のルールを

More information

プログラミング実習I

プログラミング実習I プログラミング実習 I 03 変数と式 人間システム工学科井村誠孝 m.imura@kwansei.ac.jp 3.1 変数と型 変数とは p.60 C 言語のプログラム中で, 入力あるいは計算された数や文字を保持するには, 変数を使用する. 名前がついていて値を入れられる箱, というイメージ. 変数定義 : 変数は変数定義 ( 宣言 ) してからでないと使うことはできない. 代入 : 変数には値を代入できる.

More information

Microsoft Word - Training4_判断と制御.docx

Microsoft Word - Training4_判断と制御.docx Training 4 判断と制御 株式会社イーシーエス出版事業推進委員会 1 Lesson1 フローチャート Point プログラムの処理手順を意識しよう!! フローチャートはプログラミングなどの処理の手順を各仕事単位に分割して 流れを図で表したものです フローチャートの書き方については巻末資料参照 問題 1 1~5 にあてはまる文章を解答群より選びフローチャートを完成させなさい フローチャートは

More information

gengo1-8

gengo1-8 問題提起その 1 一文字ずつ文字 ( 数字 ) を読み込み それぞれの文字が何回入力されたかを数えて出力するプログラム int code, count_0=0, count_1=0, count_2=0, count_3=0,..., count_9=0; while( (code=getchar())!= EOF ){ } switch(code){ case 0 : count_0++; break;

More information

プログラミング基礎

プログラミング基礎 C プログラミング Ⅱ 演習 2-1(a) BMI による判定 文字列, 身長 height(double 型 ), 体重 weight (double 型 ) をメンバとする構造体 Data を定義し, それぞれのメンバの値をキーボードから入力した後, BMI を計算するプログラムを作成しなさい BMI の計算は関数化すること ( ) [ ] [ ] [ ] BMI = 体重 kg 身長 m 身長

More information

2015-2018年度 2次数学セレクション(整数と数列)解答解説

2015-2018年度 2次数学セレクション(整数と数列)解答解説 015 次数学セレクション問題 1 [ 千葉大 文 ] k, m, n を自然数とする 以下の問いに答えよ (1) k を 7 で割った余りが 4 であるとする このとき, k を 3 で割った余りは であることを示せ () 4m+ 5nが 3 で割り切れるとする このとき, mn を 7 で割った余りは 4 ではないことを示せ -1- 015 次数学セレクション問題 [ 九州大 理 ] 以下の問いに答えよ

More information

Microsoft Word - no11.docx

Microsoft Word - no11.docx 3. 関数 3.1 関数関数は数学の関数と同じようなイメージを持つと良いでしょう 例えば三角関数の様に一つの実数値 ( 角度 ) から値を求めますし 対数関数の様に二つの値から一つの値を出すものもあるでしょう これをイメージしてもらえば結構です つまり 何らかの値を渡し それをもとに何かの作業や計算を行い その結果を返すのが関数です C 言語の関数も基本は同じです 0 cos 1 cos(0) =

More information

C言語7

C言語7 C 言語 7 ポインタ アドレスを出力 int a; a=5; printf(" 変数 aの値は %dです n", a); printf(" 変数 aのアドレスは %pです n", &a); 実行結果 変数 a の値は 5 です 変数 a のアドレスは 0038FAC4 です 変数 a の値は 15 です 変数 a のアドレスは 0038FAC4 です 注 アドレスの値は実行環境やプログラムの実行状況により異なります

More information

Microsoft PowerPoint - 4.pptx

Microsoft PowerPoint - 4.pptx while 文 (1) 繰り返しの必要性 while の形式と動作 繰り返しにより平 根を求める ( 演習 ) 繰り返しにより 程式の解を求める ( 課題 ) Hello. をたくさん表示しよう Hello. を画面に 3 回表示するには, 以下で OK. #include int main() { printf("hello. n"); printf("hello. n");

More information

Microsoft PowerPoint - 説明3_if文switch文(C_guide3)【2015新教材対応確認済み】.pptx

Microsoft PowerPoint - 説明3_if文switch文(C_guide3)【2015新教材対応確認済み】.pptx 情報ネットワーク導入ユニット Ⅰ C 言語 if 文 switch 文 3 章 : プログラムの流れの分岐 if 文 if( 条件 ) 条件が成立すれば実行 if( 条件 ) ~ else 場合分け ( 成立, 不成立 ) if( 条件 A) ~ else if( 条件 B) ~ else if( 条件 C) ~ else 場合分け ( 複数の条件での場合分け ) 等価演算子 : == ( 等しい

More information

Prog1_15th

Prog1_15th 2012 年 7 月 26 日 ( 木 ) 実施構造体と typedef typedef 宣言によって,struct 構造体タグ名という表記を再定義し, データ型名のように扱うことができる 構文は typedef struct 構造体タグ名 再定義名 ; となり, この場合の構造体変数の宣言は, 再定義名を用いて行うことができる なお, ここでは 構造体タグ名は省略可能である 構造体を指すポインタ

More information

関数の中で宣言された変数の有効範囲はその関数の中だけです さっきの rectangle _s で宣言されている変数 s は他の関数では使用できません ( 別の関数で同じ名前の変数を宣言することはできますが 全く別の変数として扱われます このように ある関数の中で宣言されている変数のことをその関数の

関数の中で宣言された変数の有効範囲はその関数の中だけです さっきの rectangle _s で宣言されている変数 s は他の関数では使用できません ( 別の関数で同じ名前の変数を宣言することはできますが 全く別の変数として扱われます このように ある関数の中で宣言されている変数のことをその関数の ソフトゼミ A 第 6 回関数 はじめに今まで printf や scanf など 予め用意されていた関数を使ってきました これら標準で用意されている関数を作ることは ( 特に入出力系は ) とても難しいのですが 関数は自作することができます というわけで 今回は自分で関数を定義して使っていく方法について学びましょう 関数とは C 言語での 関数 は 処理の途中で呼び出すことによって 定義されている

More information

Microsoft PowerPoint - 計算機言語 第7回.ppt

Microsoft PowerPoint - 計算機言語 第7回.ppt 計算機言語第 7 回 長宗高樹 目的 関数について理解する. 入力 X 関数 f 出力 Y Y=f(X) 関数の例 関数の型 #include int tasu(int a, int b); main(void) int x1, x2, y; x1 = 2; x2 = 3; y = tasu(x1,x2); 実引数 printf( %d + %d = %d, x1, x2, y);

More information

<4D F736F F D20438CBE8CEA8D758DC F0939A82C282AB2E646F63>

<4D F736F F D20438CBE8CEA8D758DC F0939A82C282AB2E646F63> C 言語講座第 2 回 作成 : ハルト 前回の復習基本的に main () の中カッコの中にプログラムを書く また 変数 ( int, float ) はC 言語では main() の中カッコの先頭で宣言する 1 画面へ出力 printf() 2 キーボードから入力 scanf() printf / scanf で整数を表示 / 入力 %d 小数を表示 / 入力 %f 3 整数を扱う int 型を使う

More information

本サンプル問題の著作権は日本商工会議所に帰属します また 本サンプル問題の無断転載 無断営利利用を厳禁します 本サンプル問題の内容や解答等に関するお問 い合わせは 受け付けておりませんので ご了承ください 日商プログラミング検定 STANDARD(C 言語 ) サンプル問題 知識科目 第 1 問 (

本サンプル問題の著作権は日本商工会議所に帰属します また 本サンプル問題の無断転載 無断営利利用を厳禁します 本サンプル問題の内容や解答等に関するお問 い合わせは 受け付けておりませんので ご了承ください 日商プログラミング検定 STANDARD(C 言語 ) サンプル問題 知識科目 第 1 問 ( 本サンプル問題の著作権は日本商工会議所に帰属します また 本サンプル問題の無断転載 無断営利利用を厳禁します 本サンプル問題の内容や解答等に関するお問 い合わせは 受け付けておりませんので ご了承ください 日商プログラミング検定 STANDARD(C 言語 ) サンプル問題 知識科目 第 1 問 ( 知識 4 択 :20 問 ) 1.C 言語ソースプログラムの拡張子は何か 1 c 2 obj 3 exe

More information

Taro-リストⅢ(公開版).jtd

Taro-リストⅢ(公開版).jtd リスト Ⅲ 0. 目次 2. 基本的な操作 2. 1 リストから要素の削除 2. 2 リストの複写 2. 3 リストの連結 2. 4 問題 問題 1 問題 2-1 - 2. 基本的な操作 2. 1 リストから要素の削除 まず 一般的な処理を書き つぎに 特別な処理を書く 一般的な処理は 処理 1 : リスト中に 削除するデータを見つけ 削除する場合への対応 特別な処理は 処理 2 : 先頭のデータを削除する場合への対応

More information

Microsoft PowerPoint - kougi7.ppt

Microsoft PowerPoint - kougi7.ppt C プログラミング演習 第 7 回メモリ内でのデータの配置 例題 1. 棒グラフを描く 整数の配列から, その棒グラフを表示する ループの入れ子で, 棒グラフの表示を行う ( 参考 : 第 6 回授業の例題 3) 棒グラフの1 本の棒を画面に表示する機能を持った関数を補助関数として作る #include "stdafx.h" #include void draw_bar( int

More information

2. 整数の値を 3 つ 引数として受け取ってそのうち最大の値を返す関数 int max(int a,int b,int c) 3 つの中からの最大値, と値が少ないので, 配列を使わずにごり押しで最大値を求めてみ ました. 配列を使う方法については今までの解答を見ればわかるはずです. その場合受け

2. 整数の値を 3 つ 引数として受け取ってそのうち最大の値を返す関数 int max(int a,int b,int c) 3 つの中からの最大値, と値が少ないので, 配列を使わずにごり押しで最大値を求めてみ ました. 配列を使う方法については今までの解答を見ればわかるはずです. その場合受け 解答 解答とは言っても一例にすぎません. 若干異なっていたとしてもプログラムが動きさ えすれば問題ありません. ソフトゼミ A 練習問題解答 1. 円の直径の長さを引数として受け取って その面積を返す関数 ただし円周率は 3.14 としてよい double Circle(double d) 引数が 直径 であることに注意しましょう. 半径ではありません. 計算した面積の値は 実数になるので, 関数の型

More information

prog-text.dvi

prog-text.dvi (C ) 2008 1 2008.8.7 8 1 E mail : sakkun@yokohama-cu.ac.jp 3 I 13 1 17 1.1.......................... 17 1.1.1.......................... 17 1.1.2 OS................ 17 1.2..............................

More information

学習指導要領

学習指導要領 (1) 数と式 学習指導要領ア数と集合 ( ア ) 実数数を実数まで拡張する意義を理解し 簡単な無理数の四則計算をすること 第 1 章第 節実数 東高校学力スタンダード 4 実数 (P.3~7) 自然数 整数 有理数 無理数 実数のそれぞれの集 合について 四則演算の可能性について判断できる ( 例 ) 下の表において, それぞれの数の範囲で四則計算を考えるとき, 計算がその範囲で常にできる場合には

More information

学習指導要領

学習指導要領 (1) 数と式 ア数と集合 ( ア ) 実数数を実数まで拡張する意義を理解し 簡単な無理数の四則計算をすること 絶対値の意味を理解し適切な処理することができる 例題 1-3 の絶対値をはずせ 展開公式 ( a + b ) ( a - b ) = a 2 - b 2 を利用して根号を含む分数の分母を有理化することができる 例題 5 5 + 2 の分母を有理化せよ 実数の整数部分と小数部分の表し方を理解している

More information

Microsoft PowerPoint - C1(演算と変数).ppt

Microsoft PowerPoint - C1(演算と変数).ppt C 言語プログラミング 式の計算と変数 配列の概念 50 人の生徒の点数の平均点, 最高点 最低点を求めるプログラム ( センター入試 23 年度数学 2 情報関係基礎 第 3 問 ) (01) sowa 0, saiko 0, saitei 100 代入文 : 変数に値を代入 ( 格納 ) する (02) 配列 TNin のすべての要素を 0 にするための文 (03) bango を 1 から 50

More information

gengo1-2

gengo1-2 変数 プログラム中で 値を格納するには変数 variable を用いる変数は 格納する値の型によって 整数型 文字型 などの型 type をもつ変数を使うには 利用に先立って変数の宣言 declaration をしなければならない 値 変数の値はコンピュータのメモリ上に格納される 具体的にメモリのどの場所に格納されるかは言語処理系が自動的に扱うので プログラマ ( 特に初級者 ) が意識する必要はない

More information

Assignment_.java 0 Assignment_.java 課題 : 台形の面積 / class Assignment_ public static void main(string[] args) throws IOException キーボード準備 int top, bottom,

Assignment_.java 0 Assignment_.java 課題 : 台形の面積 / class Assignment_ public static void main(string[] args) throws IOException キーボード準備 int top, bottom, Assignment_.java Assignment_.java 課題 : 三角形の面積 / class Assignment_ public static void main(string[] args) throws IOException キーボード準備 0 int base, height; 三角形の底辺の長さと高さ double area; 面積 底辺の長さと高さの入力 System.out.println("

More information

2016年度 広島大・文系数学

2016年度 広島大・文系数学 06 広島大学 ( 文系 ) 前期日程問題 解答解説のページへ a を正の定数とし, 座標平面上において, 円 C : x + y, 放物線 C : y ax + C 上の点 P (, ) を考える - におけるC の接線 l は点 Q( s, t) でC に接してい る 次の問いに答えよ () s, t および a を求めよ () C, l および y 軸で囲まれた部分の面積を求めよ () 円 C

More information

C 2 / 21 1 y = x 1.1 lagrange.c 1 / Laglange / 2 #include <stdio.h> 3 #include <math.h> 4 int main() 5 { 6 float x[10], y[10]; 7 float xx, pn, p; 8 in

C 2 / 21 1 y = x 1.1 lagrange.c 1 / Laglange / 2 #include <stdio.h> 3 #include <math.h> 4 int main() 5 { 6 float x[10], y[10]; 7 float xx, pn, p; 8 in C 1 / 21 C 2005 A * 1 2 1.1......................................... 2 1.2 *.......................................... 3 2 4 2.1.............................................. 4 2.2..............................................

More information

‚æ4›ñ

‚æ4›ñ ( ) ( ) ( ) A B C D E F G H I J K L M N O P Q R S T U V W X Y Z a b c d e f g h i j k l m n o p q r s t u v w x y z 0 1 2 3 4 5 6 7 8 9 (OUS) 9 26 1 / 28 ( ) ( ) ( ) A B C D Z a b c d z 0 1 2 9 (OUS) 9

More information

Microsoft PowerPoint - prog04.ppt

Microsoft PowerPoint - prog04.ppt プログラミング言語 2 第 04 回 (2007 年 05 月 14 日 ) 今日の配布物 片面の用紙 1 枚 今日の課題が書かれています 本日の出欠を兼ねています 1 今日やること http://www.tnlab.ice.uec.ac.jp/~s-okubo/class/language/ にアクセスすると 教材があります 2007 年 05 月 14 日分と書いてある部分が 本日の教材です 本日の内容

More information

演習課題No12

演習課題No12 演習課題 No.12 ( 課題は 3 題ある ) 課題 12-1 時間内提出 従来の C 言語には複素数を直接扱うデータ型はないので (*), 構造体で複素数 ( 英語で complex) を表すことにする. 複素数を表す構造体を以下のように定義する. struct complex float r; // 実部 ( 英語で real) float i; // 虚部 ( 英語で imaginary)

More information

解答例 ( 河合塾グループ株式会社 KEI アドバンスが作成しました ) 特別奨学生試験 ( 平成 29 年 12 月 17 日実施 ) 数 学 数学 2= 工 経営情報 国際関係 人文 応用生物 生命健康科 現代教育学部 1 整理して (60 分 100 点 ) (2 3+ 2)(

解答例 ( 河合塾グループ株式会社 KEI アドバンスが作成しました ) 特別奨学生試験 ( 平成 29 年 12 月 17 日実施 ) 数 学 数学 2= 工 経営情報 国際関係 人文 応用生物 生命健康科 現代教育学部 1 整理して (60 分 100 点 ) (2 3+ 2)( 解答例 ( 河合塾グループ株式会社 KEI アドバンスが作成しました ) 特別奨学生試験 ( 平成 9 年 月 7 日実施 ) 数 学 数学 = 工 経営情報 国際関係 人文 応用生物 生命健康科 現代教育学部 整理して (60 分 00 点 ) 3+ ( 3+ )( 6 ) ( 与式 ) = = 6 + + 6 (3 + ) すなわち 5 6 (5 6 )(3+ ) = = 3 9 8 = 4 6

More information

数値計算

数値計算 プログラム作成から実行まで 数値計算 垣谷公徳 17 号館 3 階電子メール : kimi@ee.ous.ac.jp Source program hello.c printf("hello\n"); コンパイラ Library libc.a 0011_printf000101001 1101_getc00011100011 1011_scanf1110010100 コンパイル Object module

More information

高ゼミサポSelectⅢ数学Ⅰ_解答.indd

高ゼミサポSelectⅢ数学Ⅰ_解答.indd 数と式 ⑴ 氏点00 次の式を展開せよ ( 各 6 点 ) ⑴ (a-)(a -a+) ⑵ (x+y+)(x+y-5) 次の式を因数分解せよ (⑴⑵ 各 6 点, ⑶⑷ 各 8 点 ) ⑴ x y+x -x-6y ⑵ x -x - ⑶ a +5b ⑷ (x+y+z+)(x+)+yz 数と式 ⑵ 氏点00 次の問いに答えよ ( 各 6 点 ) ⑴ 次の循環小数を分数で表せ. a-5 = ⑵ 次の等式を満たす実数

More information

C 言語第 3 回 2 a と b? 関係演算子 a と b の関係 関係演算子 等しい a==b 等しくない a!=b より大きい a>b 以上 a>=b より小さい a<b 以下 a<=b 状態 真偽 値 条件が満たされた場合 TRUE( 真 ) 1(0 以外 ) 条件が満たされなかった場合 F

C 言語第 3 回 2 a と b? 関係演算子 a と b の関係 関係演算子 等しい a==b 等しくない a!=b より大きい a>b 以上 a>=b より小さい a<b 以下 a<=b 状態 真偽 値 条件が満たされた場合 TRUE( 真 ) 1(0 以外 ) 条件が満たされなかった場合 F C 言語第 3 回 三つの基本構造 ( シラバス 5 6 回目 ) 1 1 順次処理上から順番に実行していく #include int main(void) { long x, y; 最初 長い整数がつかえる 負の数もか だいたい ±21 億まで OK なんだ 掛け算するぞ x = 1000*2000; scanf("%ld", &y); printf("%ld", x*y);

More information

プログラミング基礎

プログラミング基礎 C プログラミング Ⅰ 授業ガイダンス C 言語の概要プログラム作成 実行方法 授業内容について 授業目的 C 言語によるプログラミングの基礎を学ぶこと 学習内容 C 言語の基礎的な文法 入出力, 変数, 演算, 条件分岐, 繰り返し, 配列,( 関数 ) C 言語による簡単な計算処理プログラムの開発 到達目標 C 言語の基礎的な文法を理解する 簡単な計算処理プログラムを作成できるようにする 授業ガイダンス

More information

P02.ppt

P02.ppt int If 2 1 ,,, 3 a + b ab a - b ab a * b ab a / b ab a % b ab a + b 4 2 list0201.c /, % /*/ int vx, vy; puts(""); printf("vx"); scanf("%d", &vx); printf("vy"); scanf("%d", &vy); printf("vx + vy = %d\n",

More information

学習指導要領

学習指導要領 (1 ) 数と式 ア数と集合 ( ア ) 実数数を実数まで拡張する意義を理解し 簡単な無理数の四則計算をすること 自然数 整数 有理数 無理数の包含関係など 実 数の構成を理解する ( 例 ) 次の空欄に適当な言葉をいれて, 数の集合を表しなさい 実数の絶対値が実数と対応する点と原点との距離で あることを理解する ( 例 ) 次の値を求めよ (1) () 6 置き換えなどを利用して 三項の無理数の乗法の計

More information

Microsoft Word - COMP-MATH-2017-FULLTEXT.doc

Microsoft Word - COMP-MATH-2017-FULLTEXT.doc #2 2017/10/10 5. printf() 解説画面に表示する関数 (= 機能 ) を printf という print は印刷 ( 表示 ) f は format( 書式 ) の意味で プリント-エフと読む どんなプログラムでも 必ず ( といってよい程 ) 使われる関数である 以下を printf.c として秀丸で作製し Visual Studio でコンパイル (cl) し 実行する

More information

1. if~ 1.1. 確認を促す まずは簡単な分岐プログラムを作ってみましょう 以下はそのフローチャートです 開始 charc よろしいですか? (y/n) 変数 c の値が 'y' と等しいかどうか c c='y' Yes よろしいですね No 終了 1: 2: 3: 4: 5: 6: 7: 8

1. if~ 1.1. 確認を促す まずは簡単な分岐プログラムを作ってみましょう 以下はそのフローチャートです 開始 charc よろしいですか? (y/n) 変数 c の値が 'y' と等しいかどうか c c='y' Yes よろしいですね No 終了 1: 2: 3: 4: 5: 6: 7: 8 if 文 条件分岐処理 三池 克明 if 文は条件の判定から処理を分岐させることができます これにより 状況に応じて処理内容の変更ができるようになります 目 次 1. if~...1 1.1. 確認を促す...1 1.2. 条件式で扱える演算子...4 2. if~else~...5 2.1. 確認を促す その2...5 2.2. 合否の判定...8 3. if~elseif~...10 3.1.

More information

スライド 1

スライド 1 プログラミング 第 3 週 静岡大学工学部機械工学科知能 材料コースロボット 計測情報分野臼杵深光電 精密コース光ナノバイオ分野居波渉 講義の前に 講義資料や演習課題 LiveCampusよりダウンロード可能 成績評価期末試験および課題により行う. 評価の配分は, おおむね試験 90%, 課題 10% である. 再試験期末試験で40 点以上 60 点未満の場合, 再試験となる. 2 月 26 日 (

More information

gengo1-11

gengo1-11 関数の再帰定義 自然数 n の階乗 n! を計算する関数を定義してみる 引数は整数 返却値も整数 n! = 1*2*3*... * (n 1)*n である ただし 0! = 1 とする int factorial(int n) int i, tmp=1; if( n>0 ) for(i=1; i

More information

Microsoft Word - no103.docx

Microsoft Word - no103.docx 次は 数える例です ex19.c /* Zeller の公式によって 1 日の曜日の分布を求めるプログラム */ int year, month, c, y, m, wnumber, count[7] = {0, i; for(year = 2001; year

More information

Microsoft Word - スーパーナビ 第6回 数学.docx

Microsoft Word - スーパーナビ 第6回 数学.docx 1 ⑴ 与式 =- 5 35 +14 35 =9 35 1 ⑵ 与式 =9-(-5)=9+5=14 1 ⑶ 与式 = 4(a-b)-3(5a-3b) = 8a-4b-15a+9b = -7a+5b 1 1 1 1 ⑷ 与式 =(²+ 1+1²)-{²+(-3+)+(-3) } 1 ⑷ 与式 =(²++1)-(²--6)=²++1-²++6=3+7 1 ⑸ 与式 = - ² + 16 = - +16

More information

Taro-再帰関数Ⅱ(公開版).jtd

Taro-再帰関数Ⅱ(公開版).jtd 0. 目次 6. 2 項係数 7. 二分探索 8. 最大値探索 9. 集合 {1,2,,n} 上の部分集合生成 - 1 - 6. 2 項係数 再帰的定義 2 項係数 c(n,r) は つぎのように 定義される c(n,r) = c(n-1,r) + c(n-1,r-1) (n 2,1 r n-1) = 1 (n 0, r=0 ) = 1 (n 1, r=n ) c(n,r) 0 1 2 3 4 5

More information

#define N1 N+1 double x[n1] =.5, 1., 2.; double hokan[n1] = 1.65, 2.72, 7.39 ; double xx[]=.2,.4,.6,.8,1.2,1.4,1.6,1.8; double lagrng(double xx); main

#define N1 N+1 double x[n1] =.5, 1., 2.; double hokan[n1] = 1.65, 2.72, 7.39 ; double xx[]=.2,.4,.6,.8,1.2,1.4,1.6,1.8; double lagrng(double xx); main =1= (.5, 1.65), (1., 2.72), (2., 7.39).2,.4,.6,.8, 1., 1.2, 1.4, 1.6 1 1: x.2 1.4128.4 1.5372.6 1.796533.8 2.198 1.2 3.384133 1.4 4.1832 1.6 5.1172 8 7 6 5 y 4 3 2 1.5 1 1.5 2 x 1: /* */ #include

More information

Taro-ビット処理(公開版).jtd

Taro-ビット処理(公開版).jtd 0. 目次 1. ビット演算 1. 1 論理積 論理和 排他的論理和 1. 2 左シフト 右シフト 2. ビット列操作 2. 1 char 型変数の表示 2. 2 int 型変数の表示 2. 3 int 型変数のビット数 2. 4 ビット単位の設定 3. 課題 3. 1 文字の詰め込みと取り出し 3. 2 ビット反転 3. 3 巡回シフト - 1 - 1. ビット演算 つぎのビット演算を使って ビット単位の処理ができる

More information

第2回講義:まとめ

第2回講義:まとめ C 言語のキーポイント 5=x は NG, x=y=6 は OK. (x=y)=6 は? *ptr=7 は? int x; printf( %d, x) は scanf ( %d, x) は 非 0 が真 0 が偽 for 文は while 文で書き直せる 逆も真 配列は 0- オリジン 関数呼び出しでは 仮引数が実引数で初期化される 式を評価するとき副作用を起こす演算子は ( 複合 ) 代入演算子

More information

1999年度 センター試験・数学ⅡB

1999年度 センター試験・数学ⅡB 99 センター試験数学 Ⅱ 数学 B 問題 第 問 ( 必答問題 ) [] 関数 y cos3x の周期のうち正で最小のものはアイウ 解答解説のページへ 0 x 360 のとき, 関数 y cos3x において, y となる x はエ個, y となる x はオ 個ある また, y sin x と y cos3x のグラフより, 方程式 sin x cos3x は 0 x 360のときカ個の解をもつことがわかる

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション 講座を行う前に 自己紹介 僕と上回生について 1 年生同士で少しお話しよう! オリエンテーションの宿題 アルゴロジック http://home.jeita.or.jp/is/highschool/algo/index3.html どこまでできましたか? あまりできなかった人はこれから全部クリアしよう! 2016 年度 C 言語講座 第一回目 2016/6/11 fumi 今回の目標 プログラムを書いて実行するやり方を覚える

More information

program7app.ppt

program7app.ppt プログラム理論と言語第 7 回 ポインタと配列, 高階関数, まとめ 有村博紀 吉岡真治 公開スライド PDF( 情報知識ネットワーク研 HP/ 授業 ) http://www-ikn.ist.hokudai.ac.jp/~arim/pub/proriron/ 本スライドは,2015 北海道大学吉岡真治 プログラム理論と言語, に基づいて, 現著者の承諾のもとに, 改訂者 ( 有村 ) が加筆修正しています.

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション - = 4 = 4 = - y = x y = x y = x + 4 y = x 比例は y = ax の形であらわすことができる 4 - 秒後 y = 5 y = 0 (m) 5 秒後 y = 5 5 y = 5 (m) 5 0 = 05 (m) 05 5 = 5 (m/ 秒 ) 4 4 秒後 y = 5 4 y = 80 (m) 5-80 5 4 = 45 (m/ 秒 ) 5 v = 0 5

More information

12 15 / sample program for a Information class DATE: heron s formula / #include <stdio.h> / for printf() / #include <math.h> / for sqrt() /

12 15 / sample program for a Information class DATE: heron s formula / #include <stdio.h> / for printf() / #include <math.h> / for sqrt() / 12 15 / sample program for a Information class DATE: 2014-12-15 heron s formula / #include / for printf() / #include / for sqrt() / double heron(double, double, double); int main(void)

More information

Prog1_6th

Prog1_6th 2012 年 5 月 24 日 ( 木 ) 実施 多分岐のプログラム 前回は多段階の 2 分岐を組み合わせて 3 種類以上の場合分けを実現したが, 式の値の評価によって, 一度に多種類の場合分けを行う多分岐の利用によって見通しのよいプログラムを作成できる場合がある ( 流れ図は右図 ) 式の評価 : 値 1 : 値 2 : 値 n : 該当値無し 処理 1 処理 2 処理 n 既定の処理 switch

More information

1. 入力した文字列を得る 1.1. 関数 scanf() を使う まずは関数 scanf() を使ったプログラムを作ってみましょう 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: #include<stdio.h> #define SIZE 128 main(

1. 入力した文字列を得る 1.1. 関数 scanf() を使う まずは関数 scanf() を使ったプログラムを作ってみましょう 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: #include<stdio.h> #define SIZE 128 main( 文字列処理 三池 克明 う char 型配列である文字列の操作について解説します 覚えるというよりは必要に応じて調べられるようにしておけば良いでしょ 目 次 1. 入力した文字列を得る...1 1.1. 関数 scanf() を使う...1 1.2. 関数 gets() を使う...2 2. 文字列を数値に変換...4 2.1. 関数 atoi()...4 2.2. 関数 atof()...7 3.

More information

プログラミング方法論 II 第 14,15 回 ( 担当 : 鈴木伸夫 ) 問題 17. x 座標と y 座標をメンバに持つ構造体 Point を作成せよ 但し座標 は double 型とする typedef struct{ (a) x; (b) y; } Point; 問題 18. 問題 17 の

プログラミング方法論 II 第 14,15 回 ( 担当 : 鈴木伸夫 ) 問題 17. x 座標と y 座標をメンバに持つ構造体 Point を作成せよ 但し座標 は double 型とする typedef struct{ (a) x; (b) y; } Point; 問題 18. 問題 17 の プログラミング方法論 II 第 14,15 回 ( 担当 : 鈴木伸夫 ) 問題 17. x 座標と y 座標をメンバに持つ構造体 Point を作成せよ 但し座標 は double 型とする typedef struct{ (a) x; (b) y; Point; 問題 18. 問題 17 の Point を用いて 2 点の座標を入力するとその 2 点間の距 離を表示するプログラムを作成せよ 平方根は

More information

3-4 switch 文 switch 文は 単一の式の値によって実行する内容を決める ( 変える ) 時に用いる 例えば if 文を使って次のようなプログラムを作ったとする /* 3 で割った余りを求める */ #include <stdio.h> main() { int a, b; } pri

3-4 switch 文 switch 文は 単一の式の値によって実行する内容を決める ( 変える ) 時に用いる 例えば if 文を使って次のようなプログラムを作ったとする /* 3 で割った余りを求める */ #include <stdio.h> main() { int a, b; } pri 3-4 switch 文 switch 文は 単一の式の値によって実行する内容を決める ( 変える ) 時に用いる 例えば if 文を使って次のようなプログラムを作ったとする /* 3 で割った余りを求める */ int a, b; b = a % 3; if (b== 0) printf( %d は 3 で割り切れます n, a); if (b == 1) printf( %d を 3 で割った余りは

More information

PowerPoint Presentation

PowerPoint Presentation 工学部 6 7 8 9 10 組 ( 奇数学籍番号 ) 担当 : 長谷川英之 情報処理演習 第 7 回 2010 年 11 月 18 日 1 今回のテーマ 1: ポインタ 変数に値を代入 = 記憶プログラムの記憶領域として使用されるものがメモリ ( パソコンの仕様書における 512 MB RAM などの記述はこのメモリの量 ) RAM は多数のコンデンサの集合体 : 電荷がたまっている (1)/ いない

More information

Taro-ファイル処理(公開版).jtd

Taro-ファイル処理(公開版).jtd ファイル処理 0. 目次 1. はじめに 2. ファイル内容の表示 3. ファイル内容の複写 3. 1 文字単位 3. 2 行単位 4. 書式付き入出力 5. 文字配列への入出力 6. 課題 6. 1 課題 1 ( ファイル圧縮 復元 ) - 1 - 1. はじめに ファイル処理プログラムの形は次のようになる #include main() { FILE *fp1,*fp2; ファイルポインタの宣言

More information

フローチャートの書き方

フローチャートの書き方 アルゴリズム ( 算法 ) 入門 1 プログラムの作成 機械工学専攻泉聡志 http://masudahp.web.fc2.com/flowchart/index.html 参照 1 何をどのように処理させたいのか どのようなデータを入力し どのような結果を出力させるのか問題を明確にする 2 問題の内容どおりに処理させるための手順を考える ( フローチャートの作成 )~アルゴリズム( 算法 ) の作成

More information

講習No.12

講習No.12 前回の関数のまとめ (1) プログラムは main() 関数の先頭から実行される 関数は main() 関数または他の関数から呼び出されて実行される. 関数を呼び出す側の実引数の値が関数内の仮引数 ( 変数 ) にコピーされる 関数内で求めた値は return 文によって関数値として呼び出し側に戻される. 関数の定義 スタートポイント 関数の呼び出し #include float

More information

C 言語講座 Vol 年 5 月 29 日 CISC

C 言語講座 Vol 年 5 月 29 日 CISC C 言語講座 Vol.3 2009 年 5 月 29 日 CISC 字下げ 見やすく書こう! #include int main(void) int a; printf(" 値 =>"); scanf("%d",&a); if(a>10) printf("10 より大きい値です \n"); else printf("10 以下の値です \n"); return 0; #include

More information

スライド 1

スライド 1 数値解析 2019 年度前期第 13 週 [7 月 11 日 ] 静岡大学創造科学技術大学院情報科学専攻工学部機械工学科計測情報講座 三浦憲二郎 講義アウトライン [7 月 11 日 ] 関数近似と補間 最小 2 乗近似による関数近似 ラグランジュ補間 T.Kanai, U.Tokyo 関数近似 p.116 複雑な関数を簡単な関数で近似する 関数近似 閉区間 [a,b] で定義された関数 f(x)

More information

講習No.10

講習No.10 2 次元配列 復習 float d[3][4]; 2 次元配列 d[i][j] 2 つのインデックス i と j でデータが指定される 縦が 3 行横が 4 列の float 型の表 4 列 横のインデックスは 3 まで j = 0 j = 1 j = 2 j = 3 3 行 i = 0 i = 1 i = 2 d[0][0] d[0][1] d[0][2] d[0][3] d[1][0] d[1][1]

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション プログラミング初級 第 13 回 2017 年 7 月 10 日 標準ライブラリ関数 1 標準ライブラリ関数とは 関数には (1) 自分で作る関数 (2) はじめから用意されている関数特に C 言語用用意されているもの : 標準ライブラリ関数 文字列の代入文字列の長さを求める文字列の比較文字列の連結 strcpy strlen strcmp strcat 2 文字列の操作 - 具体例を通して (141

More information

Microsoft Word - no202.docx

Microsoft Word - no202.docx 1.4 ポインタと配列 ポインタ変数は前回説明したように 値の入っているアドレスを示す変数です では 配列はどの ようにメモリ上に格納されるか調べてみましょう ex07.c /* ポインタと配列の関係 */ int a[3]={1, 2, 3; /* int 型の大きさ 3 の配列として宣言 */ int *i; /* int 型へのポインタとして宣言 */ double x[3] = {1.0,

More information

PowerPoint Presentation

PowerPoint Presentation 工学部 6 7 8 9 10 組 ( 奇数学籍番号 ) 担当 : 長谷川英之 情報処理演習 第 9 回 2010 年 12 月 2 日 1 今回のメインテーマ : 関数呼び出し main 関数以外に所望の処理を行う関数 ( サブルーチン ) を定義して, その関数を main 関数の中で呼び出して仕事をさせること. これも重要な概念です. 頑張って理解して下さい. 2 #include

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション オブジェクト指向 プログラミング演習 第 2 回クラス インスタンス メソッド フィールド コンストラクタ ICPC の宣伝 国際大学対抗プログラミングコンテスト 3 人一組のチームでプログラムを書く速さを競う 国内予選 : ネットワーク上で 6 月末 ~7 月頭 アジア地区予選 : 日本国内で秋に開催 世界大会 :2020 年は 6 月にモスクワで 参加登録締切 : 国内予選の 2~3 週間前 今年は

More information

Microsoft PowerPoint - C4(反復for).ppt

Microsoft PowerPoint - C4(反復for).ppt C 言語プログラミング 繰返し ( for 文と while 文 ) 例題 (10 個のデータの平均を求める ) 手順 入力データをx1,x2,,x10 として, (x1+x2+x3+x4+x5+x6+x7+x8+x9+x10)/10 を計算する データ数が,1000 個,10000 個, となったらどうする? データ数個分の 変数の宣言, scanf 関数の呼出し, 加算式の記述 が必要 1 総和を求めること

More information

2011年度 筑波大・理系数学

2011年度 筑波大・理系数学 0 筑波大学 ( 理系 ) 前期日程問題 解答解説のページへ O を原点とするy 平面において, 直線 y= の を満たす部分をC とする () C 上に点 A( t, ) をとるとき, 線分 OA の垂直二等分線の方程式を求めよ () 点 A が C 全体を動くとき, 線分 OA の垂直二等分線が通過する範囲を求め, それ を図示せよ -- 0 筑波大学 ( 理系 ) 前期日程問題 解答解説のページへ

More information

[1] #include<stdio.h> main() { printf("hello, world."); return 0; } (G1) int long int float ± ±

[1] #include<stdio.h> main() { printf(hello, world.); return 0; } (G1) int long int float ± ± [1] #include printf("hello, world."); (G1) int -32768 32767 long int -2147483648 2147483647 float ±3.4 10 38 ±3.4 10 38 double ±1.7 10 308 ±1.7 10 308 char [2] #include int a, b, c, d,

More information

Microsoft PowerPoint - prog11.ppt

Microsoft PowerPoint - prog11.ppt プログラミング言語 第 回 (7 年 7 月 6 日 今日の配布物 片面の用紙 枚 今日の課題が書かれています 本日の出欠を兼ねています /33 今日やること http://www.tnlab.ice.uec.ac.jp/~s-okubo/class/language/ にアクセスすると 教材があります 7 年 7 月 6 日分と書いてある部分が 本日の教材です 本日の内容 前回の課題の解答 Romberg

More information

数学.pdf

数学.pdf 1. 数学 1 次の不定積分を計算せよ ln x 1dx 2 次の定積分を計算せよ 1 0 x e x dx 3 次のベクトルの組は 1 次独立か 1 次従属かを判別せよ A 1, 2, 4, B 1,1, 3, B 1,1, 1 4 次の行列の固有値と固有ベクトルを求めよ 1 A 2 1 4 2. 工業力学 図のように 質量 m 長さ l の細長い棒 AB が 水平な床面上の 垂直な壁面に対して

More information

Microsoft PowerPoint - prog08.ppt

Microsoft PowerPoint - prog08.ppt プログラミング言語 2 第 07 回 (2007 年 06 月 25 日 ) 1 今日の配布物 片面の用紙 1 枚 今日の課題が書かれています 本日の出欠を兼ねています 2/27 1 今日やること http://www.tnlab.ice.uec.ac.jp/~s-okubo/class/language/ にアクセスすると 教材があります 2007 年 06 月 25 日分と書いてある部分が 本日の教材です

More information