1answer.
Ask question
Login Signup
Ask question
All categories
  • English
  • Mathematics
  • Social Studies
  • Business
  • History
  • Health
  • Geography
  • Biology
  • Physics
  • Chemistry
  • Computers and Technology
  • Arts
  • World Languages
  • Spanish
  • French
  • German
  • Advanced Placement (AP)
  • SAT
  • Medicine
  • Law
  • Engineering
Lady_Fox [76]
3 years ago
7

Write a program with three functions: upper , lower , and reverse . The upper function should accept a pointer to a C-string as

it's only argument. It should step through each character in the string, converting it to uppercase. The lower function, too, should accept a pointer to a C-string as it's only argument. It should step through each character in the string, converting it to lowercase. Like upper and lower , reverse should also accept a pointer to a string as it's only argument. As it steps through the string, it should test each character to determine whether it is upper- or lowercase. If a character is uppercase, it should be converted to lowercase. Likewise, if a character is lowercase, it should be converted to uppercase. Test the functions by asking for a string in function main , then passing it to them in the following order: reverse, lower , and upper. Main will then print out the strings to demonstrate the functions worked. Each function accepts exactly one argument. None of the functions return anything. None of the functions (other than main) interacts with the user in anyway. Variables of type string are not allowed.

Computers and Technology
1 answer:
jok3333 [9.3K]3 years ago
4 0

Answer:

Here is the C++ program:

#include <iostream>  //to use input output functions

#include <cstring>  //to manipulate C-strings

#include <string>  //to manipulate strings

using namespace std;  //to access objects cin cout

//function prototypes

void upper(char *);  to convert to upper case

void lower(char *);  //to convert to lower case

void reverse(char *);  //to convert to reverse case

int main() {  //start of main method

   char input[101];  //creates a char type array to hold input string

   cout << "Enter a string: ";  //prompts user to enter a string

   cin.getline(input, 101);  //reads input string from user

   upper(input);  //calls upper() method to convert the string to upper case

   lower(input);  //calls lower() method to convert the string to lower case

   reverse(input); } //calls reverse() method to convert the string to reverse case

void upper(char *cString){  //method that takes a pointer to a C-string as it's only argument and converts that string to upper case

   cout << "String in upper case: ";  //displays string in upper case

   for(int i = 0; i < strlen(cString); i++){  //iterates through the input string cString until the length of the cString is reached

       if(islower(cString[i]))  //checks if the character at i-th index of cString is in lower case

           cout << (char) toupper(cString[i]);  //converts each i-th character of cString to upper case at each iteration

       else  //if no character of cString is in lower case

           cout << cString[i];    }  //displays the cString as it is

   cout << endl;}  //prints a new line

void lower(char *cString){  //method that takes a pointer to a C-string as it's only argument and converts that string to lower case

   cout << "String in lower case: "; //displays string in lower case

   for(int i = 0; i < strlen(cString); i++){  //iterates through each character using for loop  first character to last

       if(isupper(cString[i]))  //checks if the character at i-th index of cString is in upper case

           cout << (char) tolower(cString[i]);  //converts each i-th character of cString to lower case at each iteration

       else  //if no character of cString is in upper case

           cout << cString[i];    }  //displays the cString as it is

           cout << endl; }  //prints a new line

void reverse(char *cString){  //method that takes a pointer to a C-string as it's only argument and converts that string to reverse case (upper to lower and vice versa)

   cout << "String in reverse case: ";  //displays string in reverse case

   for(int i = 0; i < strlen(cString); i++){  //iterates through each character using for loop  first character to last

       if(isupper(cString[i]))  //checks if the character at i-th index of cString is in upper case

           cout << (char) tolower(cString[i]);  //converts character at i-th position of cString to lower

       else  //if the character is in lower case

           cout << (char) toupper(cString[i]);    }  //converts character at i-th position of cString to upper

   cout << endl;}  //prints a new line

 

Explanation:

I will explain the program with an example.

Lets suppose user enters "hi" as input. So

Now first upper() method is called by passing this C-string to it.

It has a for loop that checks at each iteration, if a character of C-string is in lower using islower method which returns true if the character is in lower case. Since both the characters 'h' and 'i' are in lower in case so they are converted to upper case at each iteration using toupper() method. So the output of this part is:

String in upper case: HI

Now next lower() method is called by passing this C-string to it.

It has a for loop that checks at each iteration, if a character of C-string is in upper using isupper method which returns true if the character is in upper case. Since both the characters 'h' and 'i' are in lower in case so the string remains as it is. So the output of this part is:

String in lower case: hi

Now next reverse() method is called by passing this C-string to it.

It has a for loop that checks at each iteration, if a character of C-string is in upper using isupper method which returns true if the character is in upper case. Since both the characters 'h' and 'i' are in lower so else part: cout << (char) toupper(cString[i]); executes which converts these characters to upper case (reverse case). So the output of this part is:

String in reverse case: HI

The screenshot of program output with a different example is attached.

You might be interested in
1.What is a project methodology?
blagie [28]

Explanation:

1. Let’s suppose that we want to test a scientific hypothesis. What we need to do first is to come up with steps and techniques for testing this hypothesis. This, in a similar way explains what project methodologies are. A project methodology gives us a properly organized way of planning and executing a substantial amount of work that needs to be completed in a given amount of time. Think of it as a game plan that you need to up with to develop a product or an IS.

2. Following a particular methodology comes with its own advantages.

  1. 1. It gets you focused on the product you are trying to come up with.
  2. 2. So many lessons will be learnt and will be documented as experiences and will be integrated as best practice. In the event that the project is a success, the same methodology can be used once again in the future.
  3. 3. Saves time since the same prescription of tools, phases, and techniques used for a particular project can be reused once more to come up with another project.

3. It maps out the existence of a project from start to finish. It is defined within a given methodology. Projects, like humans, have defined life-cycles. The same way we come out of wombs, grow, mature, decline, and then die is the same way a project has a beginning, mid, and end.

4. It does not matter whether a project one is working on is huge or not, they have to be organized into a sequence of phases for manageability. These phases include phase exits, stage gates, and kill points. Having these phases aligned together will give an organization a clear indication of how to evaluate the project’s performance and be able to mitigate problems that arise.

5. Starting the next phase just before the current one ends can sometimes be a good thing since it can reduce the schedule of the project. This is what is known as fast tracking. It is a good idea but introducing one phase before another one ends can cause an overlap and as a result can pose as a risk. Do it if the risks are within scope and can be accepted.

6. An idea that someone comes up with to build a new information system or product can be counted as one of the initiation processes of a PLC.  However, the first process is to define the goal of the project. Organizations have put amounts of time and investments into coming up with a project. Therefore, every little aspect of the project should be properly envisioned to meet the business's value. This is phase where we should ask ourselves questions like whether the project is going to be successful and how we will identify its success in correlation to the investments raised by the stakeholders. It is the phase upon which every detail is looked into carefully and goals defined before the project is flagged off.  

7. This phase provides the direction and planning for the project. Once the project has been flagged off and is ready to move forward, the team needs to define what the objectives will be, when and what time the project will be completed, and the amount of money that will be required to finish. In addition, things like how many people are we looking at to complete the project and the technology that will be used to build the project are highly considered and looked into in this phase.

8. At this point, the project must be approved first before moving on to this phase. The teams put all efforts of design, development, and delivery of the final product. Whoever has invested on the product will now start to have a clear picture of everything that is going on from the first phase of planning to the actual implementation based on time it has taken to the budget that has been so far.

9. Every beginning must always have an end and this is the phase that ensures a well-defined end. It ensures that the amount of effort and work that the teams have put in developing and implementing the product is complete. This phase also sees the team and stakeholders have meetings to try and consolidate and come into terms of whether or not the goals of the planning phase have been achieved.

10. Because every single project has its own goals and achievements that it wants to meet. Every product is unique in terms of what it wants to achieve and the principles and practices might not work for every project. It is the processes used to come up with the particular project that will play an integral part in the life cycle

Learn more about project methodologies by clicking on the link below

brainly.com/question/13821095

brainly.com/question/988326

#LearnWithBrainly

4 0
3 years ago
Create a simple program of your own using a Loop that counts and displays numbers 1-10.
avanturin [10]

Answer:

I think

Explanation:

you....

8 0
3 years ago
Which is the correct option?
Murljashka [212]

Answer:

C

Explanation:

Key logging is when a hacker can track every key u have clicked.

3 0
3 years ago
The IT department at Piggy Parts BBQ has recently learned of phishing attempts that rely on social engineering to break into its
Katen [24]

Answer:

all personnel

Explanation:

According to my research on information technology and cyber security, I can say that based on the information provided within the question this information should be communicated to all personnel. This should be done as a safety precaution, by making all personnel aware of they would know to speak up if they see anything suspicious otherwise they might think an attack is just part of something that the organization is implementing.

I hope this answered your question. If you have any more questions feel free to ask away at Brainly.

6 0
3 years ago
Choose the 3 correct statements for the code below.
Nookie1986 [14]

Answer:

True

False

True

False

True

Explanation:

So I'll go through each statement and explain why or why not they're correct.

An object of the ActivationLayer class has a name attribute. So because ActivationLayer is inheriting the BaseLayer and it's calling super().__int__("Activation") it's going to call the BaseLayer.__init__ thus setting a name attribute equal to "Activation" for any ActivationLayer object that is initalized. So this is true

An object of the BaseLayer class has a size attribute. While it is true that FC layer is inheriting from BaseLayer and it has a size attribute, this does nothing to change the BaseLayer class. So any object initialized to a BaseLayer object will only have the instance attribute "self.name". So this is false

print(FCLayer(42)) prints FullyConnectedLayer. So whenever you print an object, it tries to convert the object to a string using the __str__ magic method, but if that wasn't defined it then tries the __repr__ method, which the FCLayer class technically doesn't define, but it inherits it from the BaseLayer class. And since whenever you define an FCLayer object it calls super().__init__ with "FullyConnected", which will then be assigned to the instance variable self.name,  it will print "FullyConnectedLayer". So this is true

When creating an object of the ActivationLayer class, the size argument must be given. This is true, because the size is a parameter of the __init__ method of ActivationLayer, it is not an optional parameter, and is something that must be passed otherwise an error will be raised. So this is false

When creating an object of the BaseLayer class, the name argument must be given. This is not true, because name is a default argument. This means if you do not pass an argument for name, then name will equal an empty string

4 0
2 years ago
Other questions:
  • The drone intercepts at 1256 hour. what time do they plane to take control of the drone
    11·1 answer
  • What are some pros and cons of being a Computer Hardware Engineer?
    15·1 answer
  • 7d2b:00a9:a0c4:0000:a772:00fd:a523:0358
    12·1 answer
  • Which of the following statements about arrays are true?
    10·1 answer
  • Egovernment involves the use of strategies and technologies to transform government by improving the delivery of services and en
    7·1 answer
  • Which of the following is the shortcut key combination for pasting copied text?
    11·2 answers
  • Your grandmother was an established artist and left you several original paintings after she died. Which of these statements is
    11·1 answer
  • A type of VPN connection, where a single computer logs into a remote network and becomes, for all intents and purposes, a member
    13·1 answer
  • Kareem is working on a project for his manager. He has a few questions for a co-worker who he knows is knowledgeable on the subj
    7·1 answer
  • Determine what is printed by the following code.
    8·1 answer
Add answer
Login
Not registered? Fast signup
Signup
Login Signup
Ask question!