void assembler(FILE *getin, int *stack_a, stack_t *stack,struct inf *textin){ int k, i = 0; while (fscanf (getin, "%s%d", textin -> operation, &(textin -> sd)) != EOF) { if (strcmp(textin -> operation, "push") == 0){ stack_a[i++] = 1; push(stack, textin -> sd); stack_a[i++] = textin -> sd; } if (strcmp(textin -> operation, "pop") == 0){ stack_a[i++] = 2; k = pop(stack); } if (strcmp(textin -> operation, "add") == 0){ stack_a[i++] = 3; add(stack); } if (strcmp(textin -> operation, "sub") == 0){ stack_a[i++] = 4; sub(stack); } if (strcmp(textin -> operation, "mul") == 0){ stack_a[i++] = 5; mul(stack); } if (strcmp(textin -> operation, "divi") == 0){ stack_a[i++] = 6; divi(stack); } } }
int main(int argc, char *argv[]){ int result, i, sum; printf("Name of file : %s\n", argv[0]); if(argc < 3){ printf("error"); return 0; //exit(1); } if(*argv[1] == '+'){ add(argv); } else if(*argv[1] == '-'){ deduction(argv); } else if(*argv[1] == 'm'){ multi(argv); } else if(*argv[1] == '/'){ divi(argv); } else{ return 0; } return 0; }
void preprosessor(int *stack_a, stack_t *stack) { int t,i = 0; //int t = 1; for (i = 0; i < maxsize; i++){ if (stack_a[i] == push_num){ i++; t = stack_a[i]; push(stack, t); // printf("%d", stack_a[i]); // printf("%d", stack -> mas[0]); } else { if (stack_a[i] == pop_num) pop(stack); if (stack_a[i] == add_num) add(stack); if (stack_a[i] == sub_num) sub(stack); if (stack_a[i] == mul_num) mul(stack); if (stack_a[i] == divi_num) divi(stack); } } }
void main(void) { int x, y, i, r; char keisan[4][4] = {"+","-","×","÷"}; printf("1つ目の値を入力してください:"); /* 値を入力 */ scanf("%d", &x); printf("2つ目の値を入力してください:"); scanf("%d", &y); while (1) { /* 1~4のときは処理を抜け出す */ printf("番号を指定してください:(1.加算 2.減算 3.乗算 4.除算)"); scanf("%d", &i); if (i == 1) { r = add(x, y); /* 加算処理へ */ break; } else if (i == 2) { r = sub(x, y); /* 減算処理へ */ break; } else if (i == 3) { r = mult(x, y); /* 乗算処理へ */ break; } else if (i == 4) { r = divi(x, y); /* 除算処理へ */ break; } else { printf("エラー:指定された値が間違っています もう一度入力して下さい\n"); /* エラー:1~4以外が入力された */ } /* もう一度入力をさせる */ } printf("\n"); printf("処理結果:\n"); /* 結果出力 */ printf("%d %s %d = %dです\n", x, keisan[i-1], y, r); }
int main(int argc, char* argv[]) { if( argc > 2) { int x = atoi(argv[1]); int y = atoi(argv[2]); printf("%i\n", divi(x,y)); } exit(0); }
int main(int argc, const char **argv){ printf(" 2 + 3 = %i\n", suma(2, 3)); printf(" 6 - 3 = %i\n", rest(6, 3)); printf(" 2 * 3 = %i\n", mult(2, 3)); printf(" 7 / 3 = %i\n", divi(7, 3)); return EXIT_SUCCESS; }
int main() { printf("Program begins here!\n"); printParent(); pid_t pid1, pid2, pid3; int a = 2, b = 2, c = 2, d = 2, e = 2, f = 2; int result, rtval1, rtval2, rtval3; pid1 = fork(); if(pid1 == 0) { printChild(); return add(a, b); } else { printf("I just finished forking pid1.\n"); waitpid(-1, &rtval1, 0); rtval1 = WEXITSTATUS(rtval1); printParent(); pid2 = fork(); if(pid2 == 0) { printChild(); return add(c, b); } else { printf("I just finished forking pid2.\n"); waitpid(-1, &rtval2, 0); rtval2 = WEXITSTATUS(rtval2); printParent(); pid3 = fork(); if(pid3 == 0) { printChild(); return divi(e, f); } else { printf("I just finished forking pid3.\n"); waitpid(-1, &rtval3, 0); rtval3 = WEXITSTATUS(rtval3); printParent(); } } } result = (rtval1 * rtval2) - rtval3; //printf("%d, %d, %d\n", rtval1, rtval2, rtval3); // debug printf("The result of doing (%d + %d) * (%d + %d) - (%d / %d) is: %d\n", a, b, c, d, e, f, result); return 0; }
int main() { int t, i, length, counter, kongzhi = 0, first_pos, j; scanf("%d", &t); for (i = 1; i <= t; i++) { if (kongzhi)//输出的格式 printf("\n"); kongzhi = 1; memset(char_a, '\0', sizeof(char_a)); scanf("%s", char_a); length = strlen(char_a); is_ok = true; if ((char_a[length - 1] - '0') % 2 == 1) {//假如是单数直接判断 printf("Case %d: 1\n", i, 1); continue; } counter = 0; if (length <= 20) {//假如小于unsigned long long的最大值18446744073709551615直接判断 char judge[] = "18446744073709551615"; if (strcmp(char_a, judge) <= 0 || length <= 19) { unsigned long long sum = 0; for (j = 0; j < length; j++) { sum = sum * 10 + char_a[j] - '0' ; } while (sum % 2 == 0) { counter++; sum /= 2; } printf("Case %d: %d\n", i, counter + 1); continue; } } int unit_length = ready(length); first_pos = 0; while (1) { first_pos = divi(first_pos, unit_length - 1);//不断高精度除以2 if (is_ok) { counter++; } else { break; } } printf("Case %d: %d\n", i, counter + 1); } return 0; }
TVP vdmRem(TVP a,TVP b) { ASSERT_CHECK_NUMERIC(a); ASSERT_CHECK_NUMERIC(b); //See https://github.com/overturetool/overture/blob/development/core/interpreter/src/main/java/org/overture/interpreter/eval/BinaryExpressionEvaluator.java#L628 ASSERT_CHECK_INT(a); ASSERT_CHECK_INT(b); int av = toDouble(a); int bv = toDouble(b); return newInt(av-bv*divi(av,bv)); }
int main(){ int n,ans, s = 10; //according to question, s = 10 printf("enter the number to check : "); scanf("%d", &n); ans = divi(s,n); if(ans==1){ printf("1\n"); } else{ printf("0\n"); } }
int calculator() { int a; int b; int c; float d; printf("Please input two numbers. "); scanf("%d %d", &a, &b); c = add(a, b); printf("%d \n", c); c = multi(a, b); printf("%d \n", c); c = sub(a, b); printf("%d \n", c); d = divi(a, b); printf("%f \n", d); getch(); return 0; }
void test1() { int quotient, remainder, sign; char errmsg[MAX_ERRMSG_LEN]; res_t r1, r2, r3, r4, r5, r6, r7, r8; r1 = divi(60, 3, "ient, &remainder, &sign, 41, errmsg); r2 = divi(1, 3, "ient, &remainder, &sign, 43, errmsg); r3 = divi(-2, -5, "ient, &remainder, &sign, 41, errmsg); r4 = divi(1, 0, "ient, &remainder, &sign, 43, errmsg); r5 = divi(1, 1, NULL, &remainder, &sign, 0, errmsg); r6 = divi(1, 1, "ient, NULL, &sign, 0, errmsg); r7 = divi(1, 1, "ient, &remainder, NULL, 0, errmsg); r8 = divi(nondet, nondet, "ient, &remainder, &sign, 0, errmsg); }
int main() { int res; int a,b; scanf("%d",&a); scanf("%d",&b); res=suma(a,b); printf("%d\n",res); res = resta(a,b); printf("%d\n",res); res=mult(a,b); printf("%d\n",res); res=divi(a,b); if(res>=0) { printf("%d\n",res); } else{ printf("el numero es menor a cero y no se muestra"); } }
int main(int argc, char *argv[]) { int counter = 1; int mem[MAX_SIZE]; int control = -1; initialize(mem, MAX_SIZE-1); while(counter < argc - 1) { if (strcasecmp(argv[counter],"store") == 0) { control = 1; } else if (strcasecmp(argv[counter],"print") == 0) { control = 2; } else if (strcasecmp(argv[counter],"copy") == 0) { control = 3; } else if (strcasecmp(argv[counter],"add") == 0) { control = 4; } else if (strcasecmp(argv[counter],"sub") == 0) { control = 5; } else if (strcasecmp(argv[counter],"mul") == 0) { control = 6; } else if (strcasecmp(argv[counter],"div") == 0) { control = 7; } else if (strcasecmp(argv[counter],"mod") == 0) { control = 8; } else if (strcasecmp(argv[counter],"fact") == 0) { control = 9; } else if (strcasecmp(argv[counter],"equals") == 0) { control = 10; } switch(control) { case 1 : store(atoi(argv[counter+1]),atoi(argv[counter+2]), mem); break; case 2 : print(atoi(argv[counter+1]), mem); counter--; break; case 3 : copy(atoi(argv[counter+1]),atoi(argv[counter+2]), mem); break; case 4 : add(atoi(argv[counter+1]),atoi(argv[counter+2]), mem); break; case 5 : sub(atoi(argv[counter+1]),atoi(argv[counter+2]), mem); break; case 6 : mul(atoi(argv[counter+1]),atoi(argv[counter+2]), mem); break; case 7 : divi(atoi(argv[counter+1]),atoi(argv[counter+2]), mem); break; case 8 : mod(atoi(argv[counter+1]),atoi(argv[counter+2]), mem); break; case 9 : fact(atoi(argv[counter+1]),atoi(argv[counter+2]), mem); break; case 10 : equal(atoi(argv[counter+1]),atoi(argv[counter+2]), mem); break; } counter = counter + 3; } return 0; }
static int three_register_execute(UM_machine machine, Um_instruction instruction) { unsigned op = Bitpack_getu(instruction, BITS_PER_OP_CODE, 28); unsigned A = Bitpack_getu(instruction, BITS_PER_REG_NUM, 6); unsigned B = Bitpack_getu(instruction, BITS_PER_REG_NUM, 3); unsigned C = Bitpack_getu(instruction, BITS_PER_REG_NUM, 0); switch(op){ case 0: // movc(machine, A, B, C); return 1; case 1: segl(machine, A, B, C); return 1; case 2: segs(machine, A, B, C); return 1; case 3: add(machine, A, B, C); return 1; case 4: mult(machine, A, B, C); return 1; case 5: divi(machine, A, B, C); return 1; case 6: nand(machine, A, B, C); return 1; case 7: return 0; case 8: map(machine, B, C); return 1; case 9: unmap(machine, C); return 1; case 10: out(machine, C); return 1; case 11: in(machine, C); return 1; case 12: loadp(machine, B, C); return 1; default: return 0; } }
main() { initwindow(300,370); int remark,i,j,k,dp; float num[100]={0},number[100]= {0},ans; char task; task='\0'; i=0; j=0; ans=0; dp=-1; layout(); setviewport(3,8,290,50,1); getclick: clearmouseclick(513); setbkcolor(WHITE); clearviewport(); setcolor(RED); settextstyle(2,1,10); char c[100]; if((number[j]==0||number[j]==1)&&j!=0&&i!=1) { k=j-1; } else { k=j; } if(number[k]-(int)number[k]==0) { sprintf(c,"%.0f",number[k]); } else { sprintf(c,"%.4f",number[k]); } outtextxy(280,45,c); if(task!='S'&&task!='^') { settextstyle(2,1,6); sprintf(c,"%c",task); outtextxy(10,25,c); } delay(500); if(ismouseclick(513)==1) { getclick1: remark=click(); if(remark==-1000) { number[j]=numgen(num,i,dp); goto getclick; } else if(remark==-100) { return 0; } else if(remark>=0&&remark<=9) { if(task=='S') { j++; i=0; task='\0'; } num[i]=remark; i++; number[j]=numgen(num,i,dp); clearviewport(); delay(25); goto getclick; } else if(remark==-1) { if(i==dp) { dp=-1; } i--; if(i<0) { i=0; } number[j]=numgen(num,i,dp); clearviewport(); delay(25); goto getclick; } else if(remark==-2) { dp=i; //number[j]=numgen(num,i,dp); clearviewport(); delay(25); goto getclick; } //calculate = else if(remark==12) { if(num[0]-(int)num[0]==0) { number[j]=numgen(num,i,dp); } else { number[j]=num[0]; } if(task=='+') { number[j]=add(number[j-1],number[j]); } else if(task=='-') { number[j]=sub(number[j-1],number[j]); } else if(task=='x') { number[j]=mul(number[j-1],number[j]); } else if(task=='/') { number[j]=divi(number[j-1],number[j]); } else if(task=='^') { number[j]=pow(number[j-1],number[j]); } clearviewport(); ans=number[j]; while(1) { delay(50); setbkcolor(WHITE); settextstyle(2,1,10); if(task=='/'&&number[j]==-1) { settextstyle(2,1,8); outtextxy(285,35,"MATH ERROR"); } else if(number[j]-(int)number[j]==0) { sprintf(c,"%.0f",number[j]); outtextxy(280,45,c); } else { sprintf(c,"%.4f",number[j]); outtextxy(285,45,c); } delay(500); if(ismouseclick(513)) { i=0; j=0; number[j]=0; dp=-1; task='\0'; clearviewport(); delay(50); goto getclick1; } } } else if(remark==11) { if(num[0]-(int)num[0]==0) { number[j]=numgen(num,i,dp); } else { number[j]=num[0]; } if(task=='+') { number[j]=add(number[j-1],number[j]); } else if(task=='-') { number[j]=sub(number[j-1],number[j]); } else if(task=='x') { number[j]=mul(number[j-1],number[j]); } else if(task=='/') { number[j]=divi(number[j-1],number[j]); } else if(task=='^') { number[j]=pow(number[j-1],number[j]); } j++; i=0; number[j]=0; dp=-1; task='+'; clearviewport(); delay(25); goto getclick; } else if(remark==13) { i=0; j=0; number[j]=0; task='\0'; goto getclick; } else if(remark==14) { if(num[0]-(int)num[0]==0) { number[j]=numgen(num,i,dp); } else { number[j]=num[0]; } if(task=='+') { number[j]=add(number[j-1],number[j]); } else if(task=='-') { number[j]=sub(number[j-1],number[j]); } else if(task=='x') { number[j]=mul(number[j-1],number[j]); } else if(task=='/') { number[j]=divi(number[j-1],number[j]); } else if(task=='^') { number[j]=pow(number[j-1],number[j]); } j++; i=0; number[j]=0; dp=-1; task='-'; clearviewport(); delay(25); goto getclick; } else if(remark==15) { if(num[0]-(int)num[0]==0) { number[j]=numgen(num,i,dp); } else { number[j]=num[0]; } if(task=='+') { number[j]=add(number[j-1],number[j]); } else if(task=='-') { number[j]=sub(number[j-1],number[j]); } else if(task=='x') { number[j]=mul(number[j-1],number[j]); } else if(task=='/') { number[j]=divi(number[j-1],number[j]); } else if(task=='^') { number[j]=pow(number[j-1],number[j]); } j++; i=0; number[j]=0; dp=-1; num[i]=0; task='x'; clearviewport(); delay(25); goto getclick; } else if(remark==16) { if(num[0]-(int)num[0]==0) { number[j]=numgen(num,i,dp); } else { number[j]=num[0]; } if(task=='+') { number[j]=add(number[j-1],number[j]); } else if(task=='-') { number[j]=sub(number[j-1],number[j]); } else if(task=='x') { number[j]=mul(number[j-1],number[j]); } else if(task=='/') { number[j]=divi(number[j-1],number[j]); } else if(task=='^') { number[j]=pow(number[j-1],number[j]); } j++; i=0; number[j]=0; dp=-1; num[i]=0; task='/'; clearviewport(); delay(25); goto getclick; } else if(remark==-3) { number[j]=sqrt(number[j]); num[0]=number[j]; i=1; task='S'; ans=number[j]; clearviewport(); delay(50); clearmouseclick(513); goto getclick; } else if(remark==-4) { number[j]=(number[j]/100)*number[j-1]; if(number[j-1]==0) { number[j]=0; } num[0]=number[j]; i=1; task='S'; ans=number[j]; clearviewport(); delay(50); clearmouseclick(513); goto getclick; } else if(remark==-5) { if(num[0]-(int)num[0]==0) { number[j]=numgen(num,i,dp); } else { number[j]=num[0]; } if(task=='+') { number[j]=add(number[j-1],number[j]); } else if(task=='-') { number[j]=sub(number[j-1],number[j]); } else if(task=='x') { number[j]=mul(number[j-1],number[j]); } else if(task=='/') { number[j]=divi(number[j-1],number[j]); } else if(task=='^') { number[j]=pow(number[j-1],number[j]); } j++; i=0; number[j]=0; dp=-1; num[i]=0; task='^'; clearviewport(); delay(25); goto getclick; } else if(remark==-6) { number[j]=ans; num[0]=ans; i=1; clearviewport(); delay(25); goto getclick; } else { clearmouseclick(513); goto getclick; } } clearmouseclick(513); goto getclick; }
int main( int argc , char * argv[] ) { std::cout << "算术" << std::endl; int a = 10 , b = 20; int ret; std::plus<int>add; ret = add(a,b); std::cout << ret << std::endl; std::minus<int> min; ret = min(b,a); std::cout << ret << std::endl; std::multiplies<int> mp; ret = mp(a,b); std::cout << ret << std::endl; std::divides<int> divi; ret = divi(a,b); std::cout << ret << std::endl; std::modulus<int> mod; ret = mod(a,b); std::cout << ret << std::endl; std::negate<int> neg; ret = neg(a); std::cout << ret << std::endl; std::cout << "关系" <<std::endl; int a2 = 10 , b2 = 20; int ret2; std::equal_to<int> et; ret2 = et(a,b); std::cout << ret2 <<std::endl; std::not_equal_to<int> net; ret2 = net(a,b); std::cout << ret2 << std::endl; std::greater<int>gt; ret2 = gt(b,a); std::cout << ret2 << std::endl; std::greater_equal<int> gte; ret2 = gte(a,b); std::cout << ret2 <<std::endl; std::less<int> ls; ret2 = ls(a,b); std::cout << ret2 << std::endl; std::less_equal<int> lel; ret2 = lel(a,b); std::cout << ret2 << std::endl; std::cout << "逻辑" << std::endl; int ret3; std::logical_and<int> la; ret3 = la(a,b); std::cout << ret3 <<std::endl; std::logical_or<int> lo; ret3 = lo(a,b); std::cout << ret3 << std::endl; std::logical_not<int>ln; ret3 = ln(b); std::cout << ret3 <<std::endl; return EXIT_SUCCESS; }