What's new

Closed About reversing

Status
Not open for further replies.

Arcturus

𝙻𝚊𝚣𝚢 𝙳𝚎𝚟
Contributor
Joined
Jul 13, 2016
Posts
30,492
Solutions
10,610
Reaction
20,280
Points
17,722
Age
24
Mga Master konting tulong naman po,
May way po ba para hindi i accept ng int variable ang mga special characters?
eto po yung code:
Code:
string strrev(string reverse){
    int i,j;
    j = reverse.size() - 1;
    for( i = 0 ; i < j ; i++, j--){
        temp = reverse[i];
        reverse[i] = reverse[j];
        reverse[j] = temp;
    }
    return reverse;

int main(){
string digits;
    int TOOINT;


cout<<"Enter any Integer for Reversing: ";
               cin.ignore();
               do {
               getline(cin, digits);
               TOOINT = atoi(digits.c_str());
            }while((TOOINT / 10) < 2);
            cout<<"The Reversed of "<<digits<<" is "<<strrev(digits);
}

eto po yung output,

upload_2018-10-13_14-10-11.png
 

Attachments

Salamat Boss, try ko po
chineck ko hindi naglalabas ng exception error kahit maling input sa cin.

Try mo to. Baka makakuha ka ng idea.

Code:
#include<string>
#include<iostream>
using namespace std;

string strrev(string r){
    int temp;
    for(int i = 0,int j = r.size()-1 ; i <= j ; i++, j--)
    {
        temp = r[i];
        r[i] = r[j];
        r[j] = temp;
    }
    return r;
}
int main()
{
    int digits;
    string stringDigit;
    cout<<"Enter any Integer for Reversing: ";

    cin>> digits;
    if(!cin)
    {
        cout<< "The input is not a digit, input should be single integer without spaces...\n\n";
    }
    else
    {
        stringDigit = to_string(digits);
        cout<<"The Reversed of "<<stringDigit<<" is "<<strrev(stringDigit) << endl << endl;
    }
}
 
chineck ko hindi naglalabas ng exception error kahit maling input sa cin.

Try mo to. Baka makakuha ka ng idea.

Code:
#include<string>
#include<iostream>
using namespace std;

string strrev(string r){
    int temp;
    for(int i = 0,int j = r.size()-1 ; i <= j ; i++, j--)
    {
        temp = r[i];
        r[i] = r[j];
        r[j] = temp;
    }
    return r;
}
int main()
{
    int digits;
    string stringDigit;
    cout<<"Enter any Integer for Reversing: ";

    cin>> digits;
    if(!cin)
    {
        cout<< "The input is not a digit, input should be single integer without spaces...\n\n";
    }
    else
    {
        stringDigit = to_string(digits);
        cout<<"The Reversed of "<<stringDigit<<" is "<<strrev(stringDigit) << endl << endl;
    }
}
Ganun talaga boss, basta't nag enter ako ng number na may isang letter or special char. napasok sya
 
Etong part na to siguro kailangan ayusin boss,
Inayos ko ulit. Kasi tumatanggap ng integer na may spaces.
Try mo.


Code:
#include<string>
#include<iostream>
using namespace std;

bool IntegerChecker(string input);
string strrev(string r);

int main()
{
    int digits;
    string stringDigit;
    cout<<"Enter any Integer for Reversing: ";

    getline(cin, stringDigit);

    if(IntegerChecker(stringDigit))
    {
        cout<<"The Reversed of "<<stringDigit<<" is "<<strrev(stringDigit) << endl << endl;
    }
    else
    {
        cout<< "The input is not a digit, input should be single integer without spaces...\n\n";
    }
}
bool IntegerChecker(string input)
{
    for(int i = 0; i < input.size(); i++)
    {
        if(!isdigit(input[i]))
        {
            return false;
        }
    }
    return true;
}
string strrev(string r){
    int temp;
    int j = r.size() - 1;
    for(int i = 0; i <= j ; i++, j--)
    {
        temp = r[i];
        r[i] = r[j];
        r[j] = temp;
    }
    return r;
}
 
Inayos ko ulit. Kasi tumatanggap ng integer na may spaces.
Try mo.


Code:
#include<string>
#include<iostream>
using namespace std;

bool IntegerChecker(string input);
string strrev(string r);

int main()
{
    int digits;
    string stringDigit;
    cout<<"Enter any Integer for Reversing: ";

    getline(cin, stringDigit);

    if(IntegerChecker(stringDigit))
    {
        cout<<"The Reversed of "<<stringDigit<<" is "<<strrev(stringDigit) << endl << endl;
    }
    else
    {
        cout<< "The input is not a digit, input should be single integer without spaces...\n\n";
    }
}
bool IntegerChecker(string input)
{
    for(int i = 0; i < input.size(); i++)
    {
        if(!isdigit(input[i]))
        {
            return false;
        }
    }
    return true;
}
string strrev(string r){
    int temp;
    int j = r.size() - 1;
    for(int i = 0; i <= j ; i++, j--)
    {
        temp = r[i];
        r[i] = r[j];
        r[j] = temp;
    }
    return r;
}
Big Thanks Boss!
Ayos na sya :))
 
Master sa code nyo po na
Code:
bool IntegerChecker(string input);

Pwede po bang mag declude ng dot(.) ?
balak ko din po kasing gamitin yung code nyo po na yan sa isa pang program na e^x na naka double variable po, hindi po kasi nya tinatanggap ang dot(.) kaya kahit mag enter ako ng 12.12 auto block syaa,
 
Master sa code nyo po na
Code:
bool IntegerChecker(string input);

Pwede po bang mag declude ng dot(.) ?
balak ko din po kasing gamitin yung code nyo po na yan sa isa pang program na e^x na naka double variable po, hindi po kasi nya tinatanggap ang dot(.) kaya kahit mag enter ako ng 12.12 auto block syaa,
Medyo complicated na yan kasi ichecheck mo kung digits lang at isang dot lang ang nageexist sa string.
 
Medyo complicated na yan kasi ichecheck mo kung digits lang at isang dot lang ang nageexist sa string.
Code:
bool FloatChecker(string input)
{
    int dotCount = 0;
    for(int i = 0; i < input.size(); i++)
    {
        if(input[i] == '.')
        {
            dotCount ++;
            if(dotCount > 1)
            {
                return false;
            }
        }
        else
        {
            if(!isdigit(input[i]))
            {
                return false;
            }
        }


    }

    if(dotCount != 0)
    {
        return true;
    }
}
 
Code:
bool FloatChecker(string input)
{
    int dotCount = 0;
    for(int i = 0; i < input.size(); i++)
    {
        if(input[i] == '.')
        {
            dotCount ++;
            if(dotCount > 1)
            {
                return false;
            }
        }
        else
        {
            if(!isdigit(input[i]))
            {
                return false;
            }
        }


    }

    if(dotCount != 0)
    {
        return true;
    }
}
Astig mo talaga boss!, ang daming knowlege galing sayo!
 
másáráp sa feeling kapag nakakasolve ka ng mga programming problems ng sariling sikap. Sana kayo din i-try niyo bago kayo humingi ng tulong sa iba. :)
 
Code:
#include <stdio.h>

int main() {
    int d;

    printf("Enter integer: ");
    scanf("%d",&d);
    
    printf("Reverse: ");
    do {
        printf("%d",d%10);
        d/=10;
    } while(d>0);

    return 0;
}
 
Status
Not open for further replies.

Similar threads

Back
Top