Форум программистов, компьютерный форум CyberForum.ru

Удалить из введенной с клавиатуры строки начальные пробелы - C++

Восстановить пароль Регистрация
 
 
Рейтинг: Рейтинг темы: голосов - 24, средняя оценка - 4.67
denizurs
0 / 0 / 0
Регистрация: 30.06.2010
Сообщений: 52
30.06.2010, 17:20     Удалить из введенной с клавиатуры строки начальные пробелы #1
Собственно в написании такой програмулинки:которая удаляет из введенной с клавиатуры строки начальные пробелы. Полученная строка без начальных пробелов должна сохраняться в файл,заранее большое спасибо всем отозвавшимся мне помочь!!!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.06.2010, 17:20     Удалить из введенной с клавиатуры строки начальные пробелы
Посмотрите здесь:

C++ написать программу, которая удаляет из введенной с клавиатуры строки начальные пробелы
Удалить начальные пробелы из строки... C++
C++ Удалить из строки начальные пробелы
Написать программу, которая удаляет из введенной с клавиатуры строки начальные пробелы. C++
C++ Написать программу, которая удаляет из введенной с клавиатуры строки конечные пробелы
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
30.06.2010, 20:55     Удалить из введенной с клавиатуры строки начальные пробелы #21
Лови. Проверяй. Смотри. Тесть.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
#include <iostream>
#include <cstdlib>
#include <string>
class CDate
{
    int day;
    int month;
    int year;
public:
    CDate(int _day, int _month, int _year):day(_day), month(_month), year(_year){}
    ~CDate(){}
    CDate operator +(CDate&d);
    CDate operator *(CDate&d);
    //CDate operator =(CDate&d);
    int GetDay(){return day;}
    int GetMonth(){return month;}
    int GetYear(){return year;}
};
CDate CDate::operator +(CDate &d)
{
    CDate temp(0,0,0);
    temp.day=day+d.day;
    temp.month=month+d.month;
    if (temp.day>31)
    {
        int l=0;
        l=temp.day/31;
        temp.day=temp.day-l*31;
        for(int i=0;i<l;i++)
            temp.month++;
    }
    temp.year=year+d.year;
    if (temp.month>12)
    {
        int l=0;
        l=temp.month/12;
        temp.month=temp.month-l*12;
        for(int i=0;i<l;i++)
            temp.year++;
    }
    return temp;
}
CDate CDate::operator *(CDate&d)
{
    CDate temp(0,0,0);
    temp.day=day-d.day;
    temp.month=month-d.month;
    temp.month=temp.month*31;
    temp.year=year-d.year;
    temp.year=temp.year*365;
    temp.day=temp.day+temp.month+temp.year;
    return temp;
}
int main()
{
    std::string str;
    CDate Ob1(50, 10, 1992);
    CDate Ob2(15, 3, 1991);
    CDate Ob3(0,0,0);
    Ob3=Ob1+Ob2;
    if(Ob3.GetMonth()==1)
        str="January";
    if(Ob3.GetMonth()==2)
        str="February";
    if(Ob3.GetMonth()==3)
        str="March";
    if(Ob3.GetMonth()==4)
        str="April";
    if(Ob3.GetMonth()==5)
        str="May";
    if(Ob3.GetMonth()==6)
        str="Juin";
    if(Ob3.GetMonth()==7)
        str="Juli";
    if(Ob3.GetMonth()==8)
        str="Avgust";
    if(Ob3.GetMonth()==9)
        str="Septemper";
    if(Ob3.GetMonth()==10)
        str="October";
    if(Ob3.GetMonth()==11)
        str="November";
    if(Ob3.GetMonth()==12)
        str="December";
    std::cout<<"Date 1+ Date 2= "<< Ob3.GetDay()<<"."<<str<<"."<<Ob3.GetYear()<<'\n';
    Ob3=Ob1*Ob2;
    std::cout<<"Raznica v dnyax: "<< Ob3.GetDay()<< '\n';
    return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
denizurs
0 / 0 / 0
Регистрация: 30.06.2010
Сообщений: 52
30.06.2010, 21:01  [ТС]     Удалить из введенной с клавиатуры строки начальные пробелы #22
Цитата Сообщение от Lavroff Посмотреть сообщение
Лови. Проверяй. Смотри. Тесть.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
#include <iostream>
#include <cstdlib>
#include <string>
class CDate
{
    int day;
    int month;
    int year;
public:
    CDate(int _day, int _month, int _year):day(_day), month(_month), year(_year){}
    ~CDate(){}
    CDate operator +(CDate&d);
    CDate operator *(CDate&d);
    //CDate operator =(CDate&d);
    int GetDay(){return day;}
    int GetMonth(){return month;}
    int GetYear(){return year;}
};
CDate CDate::operator +(CDate &d)
{
    CDate temp(0,0,0);
    temp.day=day+d.day;
    temp.month=month+d.month;
    if (temp.day>31)
    {
        int l=0;
        l=temp.day/31;
        temp.day=temp.day-l*31;
        for(int i=0;i<l;i++)
            temp.month++;
    }
    temp.year=year+d.year;
    if (temp.month>12)
    {
        int l=0;
        l=temp.month/12;
        temp.month=temp.month-l*12;
        for(int i=0;i<l;i++)
            temp.year++;
    }
    return temp;
}
CDate CDate::operator *(CDate&d)
{
    CDate temp(0,0,0);
    temp.day=day-d.day;
    temp.month=month-d.month;
    temp.month=temp.month*31;
    temp.year=year-d.year;
    temp.year=temp.year*365;
    temp.day=temp.day+temp.month+temp.year;
    return temp;
}
int main()
{
    std::string str;
    CDate Ob1(50, 10, 1992);
    CDate Ob2(15, 3, 1991);
    CDate Ob3(0,0,0);
    Ob3=Ob1+Ob2;
    if(Ob3.GetMonth()==1)
        str="January";
    if(Ob3.GetMonth()==2)
        str="February";
    if(Ob3.GetMonth()==3)
        str="March";
    if(Ob3.GetMonth()==4)
        str="April";
    if(Ob3.GetMonth()==5)
        str="May";
    if(Ob3.GetMonth()==6)
        str="Juin";
    if(Ob3.GetMonth()==7)
        str="Juli";
    if(Ob3.GetMonth()==8)
        str="Avgust";
    if(Ob3.GetMonth()==9)
        str="Septemper";
    if(Ob3.GetMonth()==10)
        str="October";
    if(Ob3.GetMonth()==11)
        str="November";
    if(Ob3.GetMonth()==12)
        str="December";
    std::cout<<"Date 1+ Date 2= "<< Ob3.GetDay()<<"."<<str<<"."<<Ob3.GetYear()<<'\n';
    Ob3=Ob1*Ob2;
    std::cout<<"Raznica v dnyax: "<< Ob3.GetDay()<< '\n';
    return 0;
}
о спасибки большое!
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
30.06.2010, 21:05     Удалить из введенной с клавиатуры строки начальные пробелы #23
denizurs, Да не за что) Мне самому условие программы понравилось) Было над чем подумать)
denizurs
0 / 0 / 0
Регистрация: 30.06.2010
Сообщений: 52
30.06.2010, 21:25  [ТС]     Удалить из введенной с клавиатуры строки начальные пробелы #24
Цитата Сообщение от Lavroff Посмотреть сообщение
denizurs, Да не за что) Мне самому условие программы понравилось) Было над чем подумать)
В принципе мне ещё одно бы непомешало для лучшей оценочки только вот воброс как бы это всё объектно с орентировать потом для димонстрации! вот кстати задачка
Разработать класс Time, в котором реализованы операции сложения,вычитания,сравнения,ввода и вывода на экран,преаброзования
из американского формата и в американский формат.
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
30.06.2010, 21:30     Удалить из введенной с клавиатуры строки начальные пробелы #25
Э. В плане из американского формата? оО
denizurs
0 / 0 / 0
Регистрация: 30.06.2010
Сообщений: 52
30.06.2010, 21:47  [ТС]     Удалить из введенной с клавиатуры строки начальные пробелы #26
Цитата Сообщение от Lavroff Посмотреть сообщение
Э. В плане из американского формата? оО
Угу!!!!

Добавлено через 3 минуты
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#include "stdafx.h"
#include "iostream"
#include "conio.h"
 
using namespace std;
 
class CTime {
private:
int h;
char m[5];
 
public:
CTime(){
cout<<"\nVvedite chasu:\n";
cin>>h;
while(h>23) {
cout<<"Vvedite chasu:\n";
cin>>h;}
cout<<"Vvedite minytu:\n";
cin>>m;
}
void GetTime() {
cout<<h<<":"<<m;}
};
 
int main()
{
CTime a;
a.GetTime();
CTime b;
b.GetTime();
getch();
return 0;
}
Добавлено через 1 минуту
Типа такого но перииначить чтобы было непохоже!
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
30.06.2010, 21:51     Удалить из введенной с клавиатуры строки начальные пробелы #27
Где функция GetTime?
denizurs
0 / 0 / 0
Регистрация: 30.06.2010
Сообщений: 52
30.06.2010, 21:56  [ТС]     Удалить из введенной с клавиатуры строки начальные пробелы #28
Вот её то какраз и недоработали!
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
30.06.2010, 22:14     Удалить из введенной с клавиатуры строки начальные пробелы #29
Ну что значит переделать в американскую систему? Чем отличается?
denizurs
0 / 0 / 0
Регистрация: 30.06.2010
Сообщений: 52
30.06.2010, 22:22  [ТС]     Удалить из введенной с клавиатуры строки начальные пробелы #30
Цитата Сообщение от Lavroff Посмотреть сообщение
Ну что значит переделать в американскую систему? Чем отличается?
вроде как форматом времени am pm
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
30.06.2010, 22:25     Удалить из введенной с клавиатуры строки начальные пробелы #31
И все? оО ща попробую.
denizurs
0 / 0 / 0
Регистрация: 30.06.2010
Сообщений: 52
30.06.2010, 23:06  [ТС]     Удалить из введенной с клавиатуры строки начальные пробелы #32
Цитата Сообщение от Lavroff Посмотреть сообщение
И все? оО ща попробую.
Ну как там чтото получилось?
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
30.06.2010, 23:07     Удалить из введенной с клавиатуры строки начальные пробелы #33
Пытаюсь. Со временем по крайней мере...
denizurs
0 / 0 / 0
Регистрация: 30.06.2010
Сообщений: 52
30.06.2010, 23:13  [ТС]     Удалить из введенной с клавиатуры строки начальные пробелы #34
Цитата Сообщение от Lavroff Посмотреть сообщение
Пытаюсь. Со временем по крайней мере...
OK!
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
30.06.2010, 23:24     Удалить из введенной с клавиатуры строки начальные пробелы #35
Предупреждаю. Это псц. Но работает. Перевод из америк и обратно

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
#include <iostream>
#include <cstdlib>
#include <string>
class CTime 
{
private:
    int h;
    std::string m;
public:
    CTime(int _h, std::string _m):h(_h),m(_m){}
    void GetTime() 
    {
        std::cout<<h<<":"<<m<<'\n';
    }
    void SetInfo(int _h, std::string _m)
    {
        h=_h;
        m=_m;
    }
    int GetH(){return h;}
    std::string GetM(){return m;}
};
int main()
{
    int h;
    std::string m;
    std::cout<<"Enter hours and minutes\n";
    std::cin>>h;
    std::cin>>m;
    CTime Ob1(0,"");
    Ob1.SetInfo(h,m);
    Ob1.GetTime();
    int p=Ob1.GetH();
    if (p>24)
        exit(0);
    if(p<12)
        std::cout<<p<<":"<<m<<" AM"<<'\n';
    if (p>=12)
        std::cout<<p-12<<":"<<m<<" PM"<<'\n';
    int z;
    std::string str;
    std::string l;
    CTime Ob2(0,"");
    std::cout<<"Enter hours and minutes and PM or AM\n";
    std::cin>>z;
    std::cin>>str;
    std::cin>>l;
    Ob2.SetInfo(z,str);
    int s=Ob2.GetH();
    if (s>=12)
        exit(0);
    if(l=="PM")
        std::cout<<s+12<<":"<<Ob2.GetM()<<'\n';
    if(l=="AM")
        std::cout<<s<<":"<<Ob2.GetM()<<'\n';
    return 0;
}
}
denizurs
0 / 0 / 0
Регистрация: 30.06.2010
Сообщений: 52
30.06.2010, 23:29  [ТС]     Удалить из введенной с клавиатуры строки начальные пробелы #36
Цитата Сообщение от Lavroff Посмотреть сообщение
Предупреждаю. Это псц. Но работает. Перевод из америк и обратно

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
#include <iostream>
#include <cstdlib>
#include <string>
class CTime 
{
private:
    int h;
    std::string m;
public:
    CTime(int _h, std::string _m):h(_h),m(_m){}
    void GetTime() 
    {
        std::cout<<h<<":"<<m<<'\n';
    }
    void SetInfo(int _h, std::string _m)
    {
        h=_h;
        m=_m;
    }
    int GetH(){return h;}
    std::string GetM(){return m;}
};
int main()
{
    int h;
    std::string m;
    std::cout<<"Enter hours and minutes\n";
    std::cin>>h;
    std::cin>>m;
    CTime Ob1(0,"");
    Ob1.SetInfo(h,m);
    Ob1.GetTime();
    int p=Ob1.GetH();
    if (p>24)
        exit(0);
    if(p<12)
        std::cout<<p<<":"<<m<<" AM"<<'\n';
    if (p>=12)
        std::cout<<p-12<<":"<<m<<" PM"<<'\n';
    int z;
    std::string str;
    std::string l;
    CTime Ob2(0,"");
    std::cout<<"Enter hours and minutes and PM or AM\n";
    std::cin>>z;
    std::cin>>str;
    std::cin>>l;
    Ob2.SetInfo(z,str);
    int s=Ob2.GetH();
    if (s>=12)
        exit(0);
    if(l=="PM")
        std::cout<<s+12<<":"<<Ob2.GetM()<<'\n';
    if(l=="AM")
        std::cout<<s<<":"<<Ob2.GetM()<<'\n';
    return 0;
}
}
а что такое ПСЦ? Спасибо!
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
30.06.2010, 23:55     Удалить из введенной с клавиатуры строки начальные пробелы #37
Псц... Ну тут мат запрещен.. Поэтому псц. 12 и 24 лучше не вводить.

Добавлено через 25 минут
Вариант намного адекватнее
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
#include <iostream>
#include <cstdlib>
#include <string>
class CTime 
{
private:
    int h;
    std::string m;
public:
    CTime(int _h, std::string _m):h(_h),m(_m){}
    void GetTime() 
    {
        std::cout<<h<<":"<<m<<'\n';
    }
    void SetInfo(int _h, std::string _m)
    {
        h=_h;
        m=_m;
    }
    int GetH(){return h;}
    std::string GetM(){return m;}
    void ToAm(CTime&Ob);
    void ToRus(CTime&Ob);
};
void CTime::ToAm(CTime&Ob)
{
    std::cout<<"Enter hours and minutes\n";
    std::cin>>Ob.h;
    std::cin>>Ob.m;
    if((Ob.h>=24)&&(Ob.m!="00"))
    {
        std::cout<<"Ne mozhet bit bolee 24 chasov v sutkax\n";
        exit(0);
    }
    Ob.GetTime();
    if(Ob.h<12)
        std::cout<<Ob.h<<":"<<Ob.m<<" AM"<<'\n';
    if(Ob.h>=12)
        std::cout<<Ob.h-12<<":"<<Ob.m<<" PM"<<'\n';
}
void CTime::ToRus(CTime &Ob)
{
    std::string str;
    std::cout<<"Enter hours and minutes and PM or AM\n";
    std::cin>>Ob.h;
    std::cin>>Ob.m;
    if(Ob.h>=12&&Ob.m!="00")
    {
        std::cout<<"Ne mozhet bit bolee 12 chasov po amerikanskomu vremeni\n";
        exit(0);
    }
    std::cin>>str;
    if (str=="PM")
        std::cout<<Ob.h+12<<":"<<Ob.m<<'\n';
    if (str=="AM")
        std::cout<<Ob.h<<":"<<Ob.m<<'\n';
}
int main()
{
    CTime Ob1(0,"");
    Ob1.ToAm(Ob1);
    CTime Ob2(0,"");
    Ob2.ToRus(Ob2);
    return 0;
}
denizurs
0 / 0 / 0
Регистрация: 30.06.2010
Сообщений: 52
01.07.2010, 00:01  [ТС]     Удалить из введенной с клавиатуры строки начальные пробелы #38
Цитата Сообщение от Lavroff Посмотреть сообщение
Псц... Ну тут мат запрещен.. Поэтому псц. 12 и 24 лучше не вводить.

Добавлено через 25 минут
Вариант намного адекватнее
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
#include <iostream>
#include <cstdlib>
#include <string>
class CTime 
{
private:
    int h;
    std::string m;
public:
    CTime(int _h, std::string _m):h(_h),m(_m){}
    void GetTime() 
    {
        std::cout<<h<<":"<<m<<'\n';
    }
    void SetInfo(int _h, std::string _m)
    {
        h=_h;
        m=_m;
    }
    int GetH(){return h;}
    std::string GetM(){return m;}
    void ToAm(CTime&Ob);
    void ToRus(CTime&Ob);
};
void CTime::ToAm(CTime&Ob)
{
    std::cout<<"Enter hours and minutes\n";
    std::cin>>Ob.h;
    std::cin>>Ob.m;
    if((Ob.h>=24)&&(Ob.m!="00"))
    {
        std::cout<<"Ne mozhet bit bolee 24 chasov v sutkax\n";
        exit(0);
    }
    Ob.GetTime();
    if(Ob.h<12)
        std::cout<<Ob.h<<":"<<Ob.m<<" AM"<<'\n';
    if(Ob.h>=12)
        std::cout<<Ob.h-12<<":"<<Ob.m<<" PM"<<'\n';
}
void CTime::ToRus(CTime &Ob)
{
    std::string str;
    std::cout<<"Enter hours and minutes and PM or AM\n";
    std::cin>>Ob.h;
    std::cin>>Ob.m;
    if(Ob.h>=12&&Ob.m!="00")
    {
        std::cout<<"Ne mozhet bit bolee 12 chasov po amerikanskomu vremeni\n";
        exit(0);
    }
    std::cin>>str;
    if (str=="PM")
        std::cout<<Ob.h+12<<":"<<Ob.m<<'\n';
    if (str=="AM")
        std::cout<<Ob.h<<":"<<Ob.m<<'\n';
}
int main()
{
    CTime Ob1(0,"");
    Ob1.ToAm(Ob1);
    CTime Ob2(0,"");
    Ob2.ToRus(Ob2);
    return 0;
}
а проблема с 12 и 24 осталась?
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
01.07.2010, 00:26     Удалить из введенной с клавиатуры строки начальные пробелы #39
Нет=)

Добавлено через 12 минут
Остальные функции нужны? + там и т.д
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.07.2010, 00:48     Удалить из введенной с клавиатуры строки начальные пробелы
Еще ссылки по теме:

C++ Программа, которая удаляет из введенной с клавиатуры строки начальные пробелы
C++ Удалить начальные пробелы из введенной с клавиатуры строки
C++ Удалить из строки начальные пробелы

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
denizurs
0 / 0 / 0
Регистрация: 30.06.2010
Сообщений: 52
01.07.2010, 00:48  [ТС]     Удалить из введенной с клавиатуры строки начальные пробелы #40
Цитата Сообщение от Lavroff Посмотреть сообщение
Нет=)

Добавлено через 12 минут
Остальные функции нужны? + там и т.д
ну да в принципе бы непомешало нужны же операции сложения вычитания,сравнения ,ввода и вывода на экран!
Yandex
Объявления
01.07.2010, 00:48     Удалить из введенной с клавиатуры строки начальные пробелы
Ответ Создать тему
Опции темы

Текущее время: 07:20. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru