一个随机数的计算程序

#include<stdio.h>
#include<stdlib.h>
#include<string.h>


int Randtime(int Minutes);
char Buffer[8];
char Buffer_cmp[8];
int i = 0;
int main(void){
    
    while(1){
        sleep(1);
        Randtime(0);
        printf("%s",Buffer);
        
    }

    
    return 0;
}

//////-----------------------------------------------------
int Randtime(int Minutes)
{
   
    int a,b,c;
    int Hour;
    //srand((xdata[11]*10+xdata[12])+Hour*60*60+Minutes*60);
top:    
    srand(i++);
    while(1){

        Hour = Minutes;
        while(1){
        a                           =rand()%8 +2;
        b                           =rand()%8 +2;
        c                           =rand()%8 +2;

        //if((a > 9 && b <= 9 && c <= 9) || (b > 9 && a <= 9 && c <= 9) || (c > 9 && a <= 9 && b <= 9)){
          if(1){
                
            if(b + a + c == Hour){
                    sprintf(Buffer,"%d+%d+%d\n",b,a,c);    
                    break;
            }else if(b + a - c == Hour){
                    sprintf(Buffer,"%d+%d-%d\n",b,a,c);    
                    break;
            }else if(b + a * c == Hour){
                    sprintf(Buffer,"%d+%d*%d\n",b,a,c);    
                    break;
            }else if(b + a / c == Hour && (a % c == 0)){
                    sprintf(Buffer,"%d+%d/%d\n",b,a,c);    
                    break;
            }else if(b - a + c == Hour && b - a > 0){
                    sprintf(Buffer,"%d-%d+%d\n",b,a,c);    
                    break;
            }else if(b - a - c == Hour && b - a > 0){
                    sprintf(Buffer,"%d-%d-%d\n",b,a,c);    
                    break;
            }else if(b - a * c == Hour ){
                    sprintf(Buffer,"%d-%d*%d\n",b,a,c);    
                    break;
            }else if(b - a / c == Hour && (a % c == 0)){
                    sprintf(Buffer,"%d-%d/%d\n",b,a,c);    
                    break;
            }else if(b * a + c == Hour ){
                    sprintf(Buffer,"%d*%d+%d\n",b,a,c);    
                    break;
            }else if(b * a - c == Hour ){
                    sprintf(Buffer,"%d*%d-%d\n",b,a,c);    
                    break;
            }else if(b * a * c == Hour ){
                    sprintf(Buffer,"%d*%d*%d\n",b,a,c);    
                    break;
            }else if(b * a / c == Hour && (a % c == 0 || b % c == 0)){
                    sprintf(Buffer,"%d*%d/%d\n",b,a,c);    
                    break;
            }else if(b / a + c == Hour && (b % a == 0)){
                    sprintf(Buffer,"%d/%d+%d\n",b,a,c);    
                    break;
            }else if(b / a - c == Hour && (b % a == 0)){
                    sprintf(Buffer,"%d/%d-%d\n",b,a,c);    
                    break;
            }else if(b / a * c == Hour && (b % a == 0)){
                    sprintf(Buffer,"%d/%d*%d\n",b,a,c);    
                    break;
            }else if(b / a / c == Hour && b % a == 0 && b % c == 0 && (b/a)%c==0){
                    sprintf(Buffer,"%d/%d/%d\n",b,a,c);    
                    break;
            } 
            else if(b + c + a == Hour){
                    sprintf(Buffer,"%d+%d+%d\n",b,c,a);    
                    break;
            }else if(b + c - a == Hour){
                    sprintf(Buffer,"%d+%d-%d\n",b,c,a);    
                    break;
            }else if(b + c * a == Hour){
                    sprintf(Buffer,"%d+%d*%d\n",b,c,a);    
                    break;
            }else if(b + c / a == Hour && (c % a == 0)){
                    sprintf(Buffer,"%d+%d/%d\n",b,c,a);    
                    break;
            }else if(b - c + a == Hour && b - c > 0){
                    sprintf(Buffer,"%d-%d+%d\n",b,c,a);    
                    break;
            }else if(b - c - a == Hour && b - c > 0){
                    sprintf(Buffer,"%d-%d-%d\n",b,c,a);    
                    break;
            }else if(b - c * a == Hour ){
                    sprintf(Buffer,"%d-%d*%d\n",b,c,a);    
                    break;
            }else if(b - c / a == Hour && (c % a == 0)){
                    sprintf(Buffer,"%d-%d/%d\n",b,c,a);    
                    break;
            }else if(b * c + a == Hour ){
                    sprintf(Buffer,"%d*%d+%d\n",b,c,a);    
                    break;
            }else if(b * c - a == Hour ){
                    sprintf(Buffer,"%d*%d-%d\n",b,c,a);    
                    break;
            }else if(b * c * a == Hour ){
                    sprintf(Buffer,"%d*%d*%d\n",b,c,a);    
                    break;
            }else if(b * c / a == Hour && (c % a == 0 || b % a == 0)){
                    sprintf(Buffer,"%d*%d/%d\n",b,c,a);    
                    break;
            }else if(b / c + a == Hour && (b % c == 0)){
                    sprintf(Buffer,"%d/%d+%d\n",b,c,a);    
                    break;
            }else if(b / c - a == Hour && (b % c == 0)){
                    sprintf(Buffer,"%d/%d-%d\n",b,c,a);    
                    break;
            }else if(b / c * a == Hour && (b % c == 0)){
                    sprintf(Buffer,"%d/%d*%d\n",b,c,a);    
                    break;
            }else if(b / c / a == Hour && b % c == 0 && b % a == 0 && (b/c)%a==0){
                    sprintf(Buffer,"%d/%d/%d\n",b,c,a);    
                    break;
            } 
            else if(c + b + a == Hour){
                    sprintf(Buffer,"%d+%d+%d\n",c,b,a);    
                    break;
            }else if(c + b - a == Hour){
                    sprintf(Buffer,"%d+%d-%d\n",c,b,a);    
                    break;
            }else if(c + b * a == Hour){
                    sprintf(Buffer,"%d+%d*%d\n",c,b,a);    
                    break;
            }else if(c + b / a == Hour && (b % a == 0)){
                    sprintf(Buffer,"%d+%d/%d\n",c,b,a);    
                    break;
            }else if(c - b + a == Hour && c - b > 0){
                    sprintf(Buffer,"%d-%d+%d\n",c,b,a);    
                    break;
            }else if(c - b - a == Hour && c - b > 0){
                    sprintf(Buffer,"%d-%d-%d\n",c,b,a);    
                    break;
            }else if(c - b * a == Hour ){
                    sprintf(Buffer,"%d-%d*%d\n",c,b,a);    
                    break;
            }else if(c - b / a == Hour && (b % a == 0)){
                    sprintf(Buffer,"%d-%d/%d\n",c,b,a);    
                    break;
            }else if(c * b + a == Hour ){
                    sprintf(Buffer,"%d*%d+%d\n",c,b,a);    
                    break;
            }else if(c * b - a == Hour ){
                    sprintf(Buffer,"%d*%d-%d\n",c,b,a);    
                    break;
            }else if(c * b * a == Hour ){
                    sprintf(Buffer,"%d*%d*%d\n",c,b,a);    
                    break;
            }else if(c * b / a == Hour && (b % a == 0 || c % a == 0)){
                    sprintf(Buffer,"%d*%d/%d\n",c,b,a);    
                    break;
            }else if(c / b + a == Hour && (c % b == 0)){
                    sprintf(Buffer,"%d/%d+%d\n",c,b,a);    
                    break;
            }else if(c / b - a == Hour && (c % b == 0)){
                    sprintf(Buffer,"%d/%d-%d\n",c,b,a);    
                    break;
            }else if(c / b * a == Hour && (c % b == 0)){
                    sprintf(Buffer,"%d/%d*%d\n",c,b,a);    
                    break;
            }else if(c / b / a == Hour && c % b == 0 && c % a == 0 && (c/b)%a==0){
                    sprintf(Buffer,"%d/%d/%d\n",c,b,a);    
                    break;
            }     
            else if(c + a + b == Hour){
                    sprintf(Buffer,"%d+%d+%d\n",c,a,b);    
                    break;
            }else if(c + a - b == Hour){
                    sprintf(Buffer,"%d+%d-%d\n",c,a,b);    
                    break;
            }else if(c + a * b == Hour){
                    sprintf(Buffer,"%d+%d*%d\n",c,a,b);    
                    break;
            }else if(c + a / b == Hour && (a % b == 0)){
                    sprintf(Buffer,"%d+%d/%d\n",c,a,b);    
                    break;
            }else if(c - a + b == Hour && c - a > 0){
                    sprintf(Buffer,"%d-%d+%d\n",c,a,b);    
                    break;
            }else if(c - a - b == Hour && c - a > 0){
                    sprintf(Buffer,"%d-%d-%d\n",c,a,b);    
                    break;
            }else if(c - a * b == Hour ){
                    sprintf(Buffer,"%d-%d*%d\n",c,a,b);    
                    break;
            }else if(c - a / b == Hour && (a % b == 0)){
                    sprintf(Buffer,"%d-%d/%d\n",c,a,b);    
                    break;
            }else if(c * a + b == Hour ){
                    sprintf(Buffer,"%d*%d+%d\n",c,a,b);    
                    break;
            }else if(c * a - b == Hour ){
                    sprintf(Buffer,"%d*%d-%d\n",c,a,b);    
                    break;
            }else if(c * a * b == Hour ){
                    sprintf(Buffer,"%d*%d*%d\n",c,a,b);    
                    break;
            }else if(c * a / b == Hour && (a % b == 0 || c % b == 0)){
                    sprintf(Buffer,"%d*%d/%d\n",c,a,b);    
                    break;
            }else if(c / a + b == Hour && (c % a == 0)){
                    sprintf(Buffer,"%d/%d+%d\n",c,a,b);    
                    break;
            }else if(c / a - b == Hour && (c % a == 0)){
                    sprintf(Buffer,"%d/%d-%d\n",c,a,b);    
                    break;
            }else if(c / a * b == Hour && (c % a == 0)){
                    sprintf(Buffer,"%d/%d*%d\n",c,a,b);    
                    break;
            }else if(c / a / b == Hour && c % a == 0 && c % b == 0 && (c/a)%b==0){
                    sprintf(Buffer,"%d/%d/%d\n",c,a,b);    
                    break;
            }     
            else if(a + b + c == Hour){
                    sprintf(Buffer,"%d+%d+%d\n",a,b,c);    
                    break;
            }else if(a + b - c == Hour){
                    sprintf(Buffer,"%d+%d-%d\n",a,b,c);    
                    break;
            }else if(a + b * c == Hour){
                    sprintf(Buffer,"%d+%d*%d\n",a,b,c);    
                    break;
            }else if( a + b / c == Hour && (b % c == 0)){
                    sprintf(Buffer,"%d+%d/%d\n",a,b,c);    
                    break;
            }else if(a - b + c == Hour && a - b > 0){
                    sprintf(Buffer,"%d-%d+%d\n",a,b,c);    
                    break;
            }else if(a - b - c == Hour && a - b > 0){
                    sprintf(Buffer,"%d-%d-%d\n",a,b,c);    
                    break;
            }else if(a - b * c == Hour ){
                    sprintf(Buffer,"%d-%d*%d\n",a,b,c);    
                    break;
            }else if(a - b / c == Hour && (b % c == 0)){
                    sprintf(Buffer,"%d-%d/%d\n",a,b,c);    
                    break;
            }else if(a * b + c == Hour ){
                    sprintf(Buffer,"%d*%d+%d\n",a,b,c);    
                    break;
            }else if(a * b - c == Hour ){
                    sprintf(Buffer,"%d*%d-%d\n",a,b,c);    
                    break;
            }else if(a * b * c == Hour ){
                    sprintf(Buffer,"%d*%d*%d\n",a,b,c);    
                    break;
            }else if(a * b / c == Hour && (b % c == 0 || a % c == 0)){
                    sprintf(Buffer,"%d*%d/%d\n",a,b,c);    
                    break;
            }else if(a / b + c == Hour && (a % b == 0)){
                    sprintf(Buffer,"%d/%d+%d\n",a,b,c);    
                    break;
            }else if(a / b - c == Hour && (a % b == 0)){
                    sprintf(Buffer,"%d/%d-%d\n",a,b,c);    
                    break;
            }else if(a / b * c == Hour && (a % b == 0)){
                    sprintf(Buffer,"%d/%d*%d\n",a,b,c);    
                    break;
            }else if(a / b / c == Hour && a % b == 0 && a % c == 0 && (a/b)%c==0){
                    sprintf(Buffer,"%d/%d/%d\n",a,b,c);    
                    break;
            } 
            else if(a + c + b == Hour){
                    sprintf(Buffer,"%d+%d+%d\n",a,c,b);    
                    break;
            }else if(a + c - b == Hour){
                    sprintf(Buffer,"%d+%d-%d\n",a,c,b);    
                    break;
            }else if(a + c * b == Hour){
                    sprintf(Buffer,"%d+%d*%d\n",a,c,b);    
                    break;
            }else if(a + c / b == Hour && (c % b == 0)){
                    sprintf(Buffer,"%d+%d/%d\n",a,c,b);    
                    break;
            }else if(a - c + b == Hour && a - c > 0){
                    sprintf(Buffer,"%d-%d+%d\n",a,c,b);    
                    break;
            }else if(a - c - b == Hour && a - c > 0){
                    sprintf(Buffer,"%d-%d-%d\n",a,c,b);    
                    break;
            }else if(a - c * b == Hour ){
                    sprintf(Buffer,"%d-%d*%d\n",a,c,b);    
                    break;
            }else if(a - c / b == Hour && (c % b == 0)){
                    sprintf(Buffer,"%d-%d/%d\n",a,c,b);    
                    break;
            }else if(a * c + b == Hour ){
                    sprintf(Buffer,"%d*%d+%d\n",a,c,b);    
                    break;
            }else if(a * c - b == Hour ){
                    sprintf(Buffer,"%d*%d-%d\n",a,c,b);    
                    break;
            }else if(a * c * b == Hour ){
                    sprintf(Buffer,"%d*%d*%d\n",a,c,b);    
                    break;
            }else if(a * c / b == Hour && (c % b == 0 || a % b == 0)){
                    sprintf(Buffer,"%d*%d/%d\n",a,c,b);    
                    break;
            }else if(a / c + b == Hour && (a % c == 0)){
                    sprintf(Buffer,"%d/%d+%d\n",a,c,b);    
                    break;
            }else if(a / c - b == Hour && (a % c == 0)){
                    sprintf(Buffer,"%d/%d-%d\n",a,c,b);    
                    break;
            }else if(a / c * b == Hour && (a % c == 0)){
                    sprintf(Buffer,"%d/%d*%d\n",a,c,b);    
                    break;
            }else if(a / c / b == Hour && a % c == 0 && a % b == 0 && (a/c)%b==0){
                    sprintf(Buffer,"%d/%d/%d\n",a,c,b);    
                    break;
            } 
                
            
            }else{
                continue;
            
            }
        

        
            
        }

        if(strncmp(Buffer,Buffer_cmp,5) == 0){
            goto top;
        }else{
            strcpy(Buffer_cmp,Buffer);
        }
        return 0;

    }
}
 

猜你喜欢

转载自blog.csdn.net/farsight_2098/article/details/85328627