wpe3B5.jpg (4091 bytes) Question #1(a-c) / Answer



Note: that all the answers to all the questions are complete programs, sometimes with extra initialisation code to run the program safely. Where the question asked for a design you will have to reverse-engineer the expected solution.


#include <condefs.h>
#pragma hdrstop
#include "..\Block I\Mt262io.h"
USELIB("..\Block I\Mt262io.lib");
#pragma argsused
/* Revision 1a */
int main(int argc, char **argv)
{AnsiString Line;
 int Index;
 int Count;

 Count=0;
 Line = ReadStringPr("Enter a line of text: ");
 for (Index=1; Index <= Length(Line); Index=Index+1)
 {
    if ((Line[Index] >= '0') && (Line[Index] <= '9'))
    {
       Count=Count+1;
    }
 }
 WriteString("Number of digits = " + AnsiString(Count));
 getchar();
 return 0;
}

#include <condefs.h>
#pragma hdrstop
#include "..\Block I\Mt262io.h"
USELIB("..\Block I\Mt262io.lib");
#pragma argsused
/* Revision 1b */
int main(int argc, char **argv)
{int Total;
 int NextNumber;

 Total=0;
 NextNumber=0;
 while (NextNumber >= 0)
 {
   NextNumber = ReadIntPr("Enter a non-negative number, or a negative one to quit: ");
  if (NextNumber >= 0)
    {
       Total=Total+NextNumber;
    }
 }
 WriteString("Total = " + AnsiString(Total));
 
 getchar();
 return 0;
}

#include <condefs.h>
#pragma hdrstop
#include "..\Block I\Mt262io.h"
USELIB("..\Block I\Mt262io.lib");
#pragma argsused
/* Revision 1c */
int main(int argc, char **argv)
{AnsiString Line;
 int Index;
 int Vowels;
 int NonVowels;

 Vowels=0;
 NonVowels=0;
 Line=ReadStringPr("Enter a non-empty line of text: ");
 for (Index=1; Index <= Length(Line); Index=Index+1)
 {
     switch (Line[Index])
     {
        case 'a':  Vowels=Vowels+1; break;
        case 'A':  Vowels=Vowels+1; break;
        case 'e':  Vowels=Vowels+1; break;
        case 'E':  Vowels=Vowels+1; break;
        case 'i':  Vowels=Vowels+1; break;
        case 'I':  Vowels=Vowels+1; break;
        case 'o':  Vowels=Vowels+1; break;
        case 'O':  Vowels=Vowels+1; break;
        case 'u':  Vowels=Vowels+1; break;
        case 'U':  Vowels=Vowels+1; break;
     default: NonVowels=NonVowels+1; break;
     }
 }
 WriteString("Number of vowels = " + AnsiString(Vowels) + " , ");
 WriteString("Number of non-vowels = " + AnsiString(NonVowels));
 
 getchar();
 return 0;
}