トレーニング1th

はじめはEclipseのCDTでやってみたけど、
まだ初心者にはいまいちだったので?!
最も楽なのにおちついてます(w

環境

いたってふつーのバイオ(w

コンパイラ

よくわからないんだよね・・・

そもそもなんで、windowsにはcのコンパイラないの?
msの独壇場だから?

ということでインストールしたらすぐにつかえる。

Helloなやつ

ファイル>新規>プロジェクト

Basic>Console Application

#include 
#include 

int main(int argc, char *argv[])
{
  
  system("PAUSE");	
  return 0;
}

ここは勝手にできてる。
system("PAUSE");の前にお決まりのを。

printf("HelloWorld\n");

F9(コンパイルと実行)
コンソールにでたよね。
ひとまず安心。

次の一歩。

さて、とりあえず写経するのはコレwww
やさしいし、まんがだからね。

やさしいC++―まずは「C言語」からはじめよう!! (I・O BOOKS)

やさしいC++―まずは「C言語」からはじめよう!! (I・O BOOKS)

型の話

意外と今回気にするので、とりあえず。
int,long,double,char
long使うんだよね。

あ、ていうかヘルプが欲しいな。
どうすればいいんだ?これ。
JavaDocみたいなの欲しいな。

変数の値を表示。
  • %d 整数で表示
  • %f 少数で表示
  • %s 文字列の表示

なんかLLっぽ、て逆か(w

等号

==で比較。
Javaといっしょ。

再帰、分岐

for,while,switchも一緒

コメントアウト

一緒。
ただし、cは//使えないみたいらしいような。

ここまで。

とりあえず、合否判定のプログラムをかいてみる。

こんな感じ?

#include 
#include 

void moji(int a){
  if(a >= 60){
    printf("OK value=%d\n",a);
  }else{
    printf("NG value=%d\n",a);
  }
}

int avg(int s, int t){
  int result;
  result = (s+t)/2;
  printf("Two Value Average = %d\n\n",result);
  return result;
}

int main(int argc, char *argv[])
{
  int kazu;
  int x,y;
  while(1){
    printf("ひとつ目の入力:");
    scanf("%d",&x);
    if(x<0)
     break;
    moji(x);

    printf("ふたつ目の入力:");
    scanf("%d",&y);
    moji(y);
    
    kazu = avg(x, y);
    moji(kazu);
  }
  
  system("PAUSE");	
  return 0;
}

Javaならもう少しかっこよくかけそう。
こんなかんじ?ってべつにかっこよくないし・・・orz

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;

public class ConcoleValuesAvg {

	static int cnt;
	public static void main(String[] args) throws IOException {
		ArrayList list = new ArrayList();
		
		BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
		for (int i = 0; true; i++) {
			System.out.println("INPUT NUMBER <<<");
			String x = reader.readLine();
			if(x.equals("-1")){
				break;
			}
			list.add(i,x);
		}
		
		System.out.println("OUTPUT Average!\n");
		ave(list, list.size());
		
	}
	private static void ave(ArrayList list, int i) {
		double sum = 0.0;
		double avg = 0.0;
		for (int j = 0; j < i; j++) {
			sum += Integer.parseInt( (String) list.get(j) );
		}
		avg = sum/i;
		System.out.println("SUM="+sum);
		System.out.println("AVERAGE="+ avg);
	}
}

まだまだ精進精進。