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;
}
|