課題 2-2

テストプログラム例

C 言語


#include <stdio.h>
int cmp(char *s1, char *s2){
 /* ここは自分で書く */
}
int main(void){
  char *teststr[]={"a","aa","Ab","AB",NULL};
  int i,j;
  for(i=0;teststr[i]!=NULL;i++){
    for(j=0;teststr[j]!=NULL;j++){
      printf("%s %s: %d\n",teststr[i], teststr[j],cmp(teststr[i],teststr[j]));
    }
  }
  return 0;
}

テスト結果

a a: 0
a aa: -1
a Ab: -1
a AB: -1
aa a: 1
aa aa: 0
aa Ab: -1
aa AB: -1
Ab a: 1
Ab aa: 1
Ab Ab: 0
Ab AB: 0
AB a: 1
AB aa: 1
AB Ab: 0
AB AB: 0

C++ 言語


class Cmp : public std::binary_function<std::string,std::string,bool> {
public:
  bool operator()(const std::string& s1, const std::string& s2){
  // ここは自分で書く
  }
};
int main(void){
  std::string teststr[]={"a","aa","Ab","AB",""};
  Cmp c;
  for(int i=0; teststr[i]!=""; ++i){
    for(int j=0; teststr[j]!=""; ++j){
      std::cout << teststr[i] << " "
		<< teststr[j] << ": "
		<< c(teststr[i],teststr[j]) << std::endl;
    }
  }
  return 0;
}

テスト結果

a a: 0
a aa: 1
a Ab: 1
a AB: 1
aa a: 0
aa aa: 0
aa Ab: 1
aa AB: 1
Ab a: 0
Ab aa: 0
Ab Ab: 0
Ab AB: 0
AB a: 0
AB aa: 0
AB Ab: 0
AB AB: 0

Java 6 言語


class Cmp implements java.util.Comparator<String> {
    public int compare(String s1, String s2){
    // ここは自分で書く
    }
}
class CmpTest {
    public static void main(String[] arg){
	java.util.Comparator<String> c = new Cmp();
	String[] teststr=new String[] {"a","aa","Ab","AB"};
	for(String s1 : teststr){
	    for(String s2 : teststr){
		System.out.println(s1+" "+s2+": "+ c.compare(s1,s2));
	    }
	}
    }
}

テスト結果

a a: 0
a aa: -1
a Ab: -1
a AB: -1
aa a: 1
aa aa: 0
aa Ab: -1
aa AB: -1
Ab a: 1
Ab aa: 1
Ab Ab: 0
Ab AB: 0
AB a: 1
AB aa: 1
AB Ab: 0
AB AB: 0