Database System Concepts
Database System Concepts
7th Edition
ISBN: 9780078022159
Author: Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher: McGraw-Hill Education
Bartleby Related Questions Icon

Related questions

Question
**Task Description:**

The goal is to create a program that takes a string input from the user and prints all possible substrings to the console.

**Example:**

- **Input:** "abc"
- **Output:** "a", "ab", "abc", "b", "bc", "c"

**Instructions:**

You can choose any programming language to implement this task.

There are no graphs or diagrams accompanying the text.
expand button
Transcribed Image Text:**Task Description:** The goal is to create a program that takes a string input from the user and prints all possible substrings to the console. **Example:** - **Input:** "abc" - **Output:** "a", "ab", "abc", "b", "bc", "c" **Instructions:** You can choose any programming language to implement this task. There are no graphs or diagrams accompanying the text.
Expert Solution
Check Mark
Step 1

Solution- Taking the string from a user and print its all substring on the console as given

Input: "abc"

// C++ program to print permutations
// of a given string with spaces.
#include <cstring>
#include <iostream>
using namespace std;

/* Function recursively prints
the strings having space pattern.
i and j are indices in 'str[]' and
'buff[]' respectively */
void printPatternUtil(const char str[],
     char buff[], int i,
       int j, int n)
{
 if (i == n)
 {
  buff[j] = '\0';
  cout << buff << endl;
  return;
 }

 // Either put the character
 buff[j] = str[i];
 printPatternUtil(str, buff, i + 1, j + 1, n);

 // Or put a space followed by next character
 buff[j] = ' ';
 buff[j + 1] = str[i];

 printPatternUtil(str, buff, i + 1, j + 2, n);
}

// This function creates buf[] to
// store individual output string and uses
// printPatternUtil() to print all permutations.
void printPattern(const char* str)
{
 int n = strlen(str);

 // Buffer to hold the string
 // containing spaces
 // 2n - 1 characters and 1 string terminator
 char buf[2 * n];

 // Copy the first character as
 // it is, since it will be always
 // at first position
 buf[0] = str[0];

 printPatternUtil(str, buf, 1, 1, n);
}

// Driver program to test above functions
int main()
{
 const char* str = "abc";
 printPattern(str);
 return 0;
}

Knowledge Booster
Background pattern image
Computer Science
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
Recommended textbooks for you
Text book image
Database System Concepts
Computer Science
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:McGraw-Hill Education
Text book image
Starting Out with Python (4th Edition)
Computer Science
ISBN:9780134444321
Author:Tony Gaddis
Publisher:PEARSON
Text book image
Digital Fundamentals (11th Edition)
Computer Science
ISBN:9780132737968
Author:Thomas L. Floyd
Publisher:PEARSON
Text book image
C How to Program (8th Edition)
Computer Science
ISBN:9780133976892
Author:Paul J. Deitel, Harvey Deitel
Publisher:PEARSON
Text book image
Database Systems: Design, Implementation, & Manag...
Computer Science
ISBN:9781337627900
Author:Carlos Coronel, Steven Morris
Publisher:Cengage Learning
Text book image
Programmable Logic Controllers
Computer Science
ISBN:9780073373843
Author:Frank D. Petruzella
Publisher:McGraw-Hill Education