課題 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