Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

Code Race/2014.8.20/WhatDoesTheFoxSay: Difference between revisions

From ZeroWiki
imported>miura0806
No edit summary
imported>miura0806
No edit summary
 
Line 1: Line 1:
= 팀명 =
[[DeleteThisPage]]
What Does The Fox Say?
= 팀원 =
Navigator : [[장혁수]]
Driver : [[최다인]]
= 코드 =
Phase Final
#include <stdio.h>
#include <iostream>
#include <math.h>
int main () {
int max = INT_MIN, row, column;
bool isInt = true, isSusic = true;
char simbol;
FILE* fp = fopen("file.txt", "r");
char *string = (char*)malloc(sizeof(char)*1024);
char *x = (char*)malloc(sizeof(char)*1024);
char *y = (char*)malloc(sizeof(char)*1024);
int *num = (int*)malloc(sizeof(int)*row*column);
fscanf(fp, "%d %d\n", &row, &column);
for(int i = 0; i < row * column; i++) {
memset(string, 0, sizeof(char)*1024);
memset(x, 0, sizeof(char)*1024);
memset(y, 0, sizeof(char)*1024);
fscanf(fp, "%s", string);
for(int j=0; string[j] != '\0' ; j++) {
if(isdigit(string[j])|| (j == 0 && string[j] == '-')) {
isInt = true;
isSusic = false;
continue;
} else if(j != 0 &&
(string[j] == '+' ||
string[j] == '-' ||
string[j] == '*')) {
simbol = string[j];
int k;
for(k=0;k<j;k++)
x[k] = string[k];
x[k] = '\0';
for(k=j +1;string[k]!='\0';k++)
y[k-(j+1)] = string[k];
y[k] = '\0';
isInt = true;
isSusic = true;
break;
} else {
isInt = false;
isSusic = false;
break;
}
}
if(isSusic) {
for(int j=0; y[j] != '\0'; j++) {
if(isdigit(y[j]) || (j ==0 && y[j] == '-')) {
isInt = true;
isSusic = true;
continue;
} else {
isInt = false;
isSusic = false;
break;
}
}
}
if(isSusic) {
switch(simbol) {
case '+':
num[i] = atoi(x) + atoi(y);
break;
case '-':
num[i] = atoi(x) - atoi(y);
break;
case '*':
num[i] = atoi(x) * atoi(y);
break;
default:
printf("ERROR!\n");
num[i] = INT_MIN;
break;
}
} else if(!isInt) {
num[i] = INT_MIN;
continue;
} else {
num[i] = atoi(string);
}
}
for(int i = 0; i < row; i++) {
for(int j = 0; j < column; j++) {
if(*(num + (i * column) + j) > max) {
max = *(num + (i * column) + j);
}
}
if(max == INT_MIN)
printf("row %d: %s\n", i +1, "NaN");
else
printf("row %d: %d\n", i +1, max);
max = INT_MIN;
}
for(int i = 0; i < column; i++) {
for(int j = 0; j < row; j++) {
if(*(num + (column * j) + i) > max) {
max = *(num + (column * j) + i);
}
}
if(max == INT_MIN)
printf("column %d: %s\n", i +1, "NaN");
else
printf("column %d: %d\n", i +1, max);
max = INT_MIN;
}
for(int i = 0; i < row; i++) {
for(int j = 0; j < column; j++) {
if(*(num + (i * column) + j) > max) {
max = *(num + (i * column) + j);
}
}
}
if(max == INT_MIN)
printf("matrix: %s\n","NaN");
else
printf("matrix: %d\n", max);
return 0;
}
-----
[[CodeRace/2014.8.20|Code Race/2014.8.20]]



Latest revision as of 11:41, 20 August 2014