[ create a new paste ] login | about

Link: http://codepad.org/BqorzKwd    [ raw code | output | fork ]

C, pasted on Jul 31:
//起動するとローマ字で姓と名を入力、姓と名の合計ポイントが基本のポイント、
//姓と名の合計が7の倍数なら最終ポイントは1.5倍、姓と名にl,u,c,k,yが含まれていたら追加で、lとcは1ポイント
//、他は1ポイント、tとbが文字に含まれていた場合3ポイント追加するプログラムの作成

// おれおれ仕様
// 大文字は小文字に変換
// a = 1, b = 2, c = 3.... の合計を基本点
// lucky = 1ポイント加算, tb = 3ポイント加算 の合計を加算点
// 基本点が7の倍数の時最終ポイント1.5倍
#include<stdio.h>

void calc(char* str, int* pKihon, int*pKasan) {
	while (*str) {
		*str = tolower(*str); // 小文字に変換
		*pKihon += *str - 96; // 基本点加算

		// 加算点計算
		switch (*str) {
		case 'l':
		case 'u':
		case 'c':
		case 'k':
		case 'y':
			*pKasan+=1;
			break;
		case 't':
		case 'b':
			*pKasan+=3;
			break;
		default:
			break;
		}
		str++;
	}
}

int main(void) {
	char sei[100], mei[100];
	int kihon = 0, kasan = 0, goukei = 0;
	printf("姓:\n");
	scanf("%s", sei);
	printf("名:\n");
	scanf("%s", mei);

	calc(sei, &kihon, &kasan);
	calc(mei, &kihon, &kasan);

	goukei = kihon + kasan;
	if (kihon % 7 == 0) {
		goukei = goukei * 1.5;
	}

	printf("基本点: %d\n", kihon);
	printf("加算点: %d\n", kasan);
	printf("最終点: %d\n", goukei);

	return 0;
}


Output:
1
2
3
4
5
姓:
名:
基本点: -874
加算点: 4
最終点: -870


Create a new paste based on this one


Comments: