My programs issues

Andrey Zherikov andrey.zherikov at gmail.com
Wed Aug 10 14:03:53 UTC 2022


On Wednesday, 10 August 2022 at 13:34:53 UTC, pascal111 wrote:
> So, the program will be like this:

Is this clearer?

```d

import std.stdio;
import std.algorithm;
import std.range;

double getNumber()
{
     double x;

     write("Enter a number: ");
     readf(" %s\n", &x);
     writeln;

     return x;
}

int getChoice()
{
     while(true)
     {
         writeln("1) addition 2) subtraction 3) multiplication 4) 
division 0) exit -1) new");
         ": ".write;

         int choice;
         readf(" %s\n", &choice);

         if(only(1,2,3,4,0,-1).canFind(choice))
             return choice;
     }
}

int main()
{
     double x, y;

     y = getNumber();

     while(true)
     {
         int choice = getChoice();

         if(choice==0)
             return 0;
         else if(choice==-1)
			y = getNumber();
         else
         {
             write("Enter a number: ");
             readf(" %s\n", &x);

             switch(choice){

                 case 1: y+=x; break;
                 case 2: y-=x; break;
                 case 3: y*=x; break;
                 case 4: y/=x; break;
                 default: break;}

             y.writeln;
         }
     }
}
```


More information about the Digitalmars-d-learn mailing list