Wednesday, August 5, 2020

Pinterest pins

#include <iostream>
#include <stdio.h>
#include <fstream>
#include <string>
#include <string.h>
#include <sstream>
#include<bits/stdc++.h>


using namespace std;

string title_to_url(string title, string domain, string slug)
{
transform(title.begin(), title.end(), title.begin(), ::tolower);
for(int i=0;i<title.length();i++)
{
if(title[i]==' ' || title[i]=='/')
title[i] = '-';

}
for(int i=0;i<title.length();i++)
{
if(!isdigit(title[i]) && !islower(title[i]) && title[i]!='-')
{
  title.replace(i,1,"");
  i--;
}
for(int i=0;i<title.length()-1;i++)
{
if(title[i]=='-' && title[i+1]=='-')
{
title.replace(i+1,1,"");
}
}
 
if (title[title.length()-1] == '-')
title.replace(title.length()-1,1,"/");
else
title.append("/");
domain = domain.append(slug);
title = title.insert(0, domain);
return title;
 
 
}

int main()
{
string valid_domains[] = {"https://pandraw.com", "https://quizmoe.blogspot.com", "https://how2quiz.blogspot.com", "https://fallquiz.blogspot.com", "https://quizlovrzz.blogspot.com"};
string valid_slugs[] = {"/personality_quiz/", "/quizmoe_quiz/", "/how2quiz_quiz/", "/fallquiz_quiz/", "/quizlovrzz_quiz/"};
int select_domain; int invalid;
do
{
invalid=0;
for(int i=0;i<sizeof(valid_domains)/sizeof(valid_domains[0]);i++)
cout<<i+1<<"."<<valid_domains[i].substr(8,valid_domains[i].length()-1)<<"\n";
cout<<"\nSelect a domain from above\n";
cin>>select_domain;
if(select_domain>sizeof(valid_domains)/sizeof(valid_domains[0]) || select_domain<1)
{
cout<<"Sorry, that was an invalid input. Please try again!\n";
invalid = 1;
}
}
while(invalid==1);
unsigned int n=0; int invalid_pin_no;

do
{
invalid_pin_no=0;
cout<<"Enter the number of pins\n";
cin>>n;
if(n>1000 || n==0)
{
cout<<"Sorry, Number of Pins can't be greater than 1000 or equal to 0. Try Again!\n";
invalid_pin_no=1;
}
}
while(invalid_pin_no==1);
cin.ignore();
string pin_titles[1000];
cout<<"Enter the title of all the pins\n";
for(int i=0; i<n; i++)
getline(cin, pin_titles[i]);

string urls[1000];
for(int i=0;i<n;i++)
{
urls[i]=title_to_url(pin_titles[i], valid_domains[select_domain-1], valid_slugs[select_domain-1]);
}
for(int i=0;i<n;i++)
cout<<urls[i]<<"\n";
unsigned int num_of_prsn=1; int invalid_num_of_prsn; 
if(n>1)
{
do
{
invalid_num_of_prsn=0;
cout<<"How many Personality Quizzes are there out of "<<n<<"?\n";
cin>>num_of_prsn;
if(num_of_prsn>n)
{
cout<<"Number of Personality Pins can't be greater than total number of pins. Try Again\n\n";
invalid_num_of_prsn = 1;
}
}
while(invalid_num_of_prsn == 1);
}
for(int i=0;i<n;i++)
{
if(i<num_of_prsn)
pin_titles[i] = pin_titles[i].insert(0, "Personality Quiz: ");
else
pin_titles[i]= pin_titles[i].insert(0, "Trivia Quiz: ");
}
ofstream pins;
pins.open("pins.txt");
ifstream pin_desc;
pin_desc.open("pin_desc.txt");
for(int i=0;i<n;i++)
{
pins<<"Pin No:"<<i+1<<"\n";
pins<<pin_titles[i]<<"\n";
string pin_line;
getline(pin_desc, pin_line);
pins<<pin_line<<"\n";
pins<<urls[i]<<"\n\n";
}

pins.close();
pin_desc.close();
return 0;
}

No comments:

Post a Comment