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

с++. удаление по условию - C++

Восстановить пароль Регистрация
 
dserp18
 Аватар для dserp18
0 / 0 / 0
Регистрация: 20.01.2013
Сообщений: 74
Записей в блоге: 2
13.06.2013, 12:12     с++. удаление по условию #1
помогитес с++ (сделал в pascal'е а в с++ не получается)
из текста, который содержит данные о фамилии, годе рождения и профессии, выбрать только те предложения, в которых год рождения больше зданного.

в pascal'е эта программа для вы однозначных чисел выглядит так (я потом доделал для 4хзначных)

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
var
str,a,x: string; i:integer;
begin
readln(str);
writeln ('input x'); readln(x);
str:=str+' ';
a:='';
for i:=1 to length(str)-1 do  begin
a:=a+str[i];
if ((str[i]>='1') and (str[i]<'5'))  then  delete(a,1,i);
if ((str[i]>='5') and (str[i]<='9'))
   then begin write(a); delete(a,1,i);end;
end; writeln; end.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
newyork7776
 Аватар для newyork7776
346 / 339 / 79
Регистрация: 21.05.2013
Сообщений: 1,305
Завершенные тесты: 1
13.06.2013, 14:10     с++. удаление по условию #2
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
#include <iostream>
#include <math.h>
#include <cstdlib>
#include <cstring>
using namespace std;
struct human
{
    char fio[50];
    int god;
    char prof[50];
};
void print(const human &m)
{
    cout << "FIO = "    << m.fio    << "\n"
         << "God = " << m.god << "\n"
         << "Profesia = "     << m.prof     << "\n\n";
}
void init(human &m)
{
    cout << "FIO: ";
    cin >> m.fio;
    cout << "God: ";
    cin >> m.god;
    cout << "Prof: ";
    cin >> m.prof;
}
void myFind(const human *arr, const int size, const int *key)
{
    for (int i=0; i < size; i++)
        if (strcmp(arr[i].god, key) >= 0) // если поле name структуры arr[i] совпадает с ключом поиска
            print(arr[i]); // выводим её на экран
}
int main()
{
    const int size = 5;
    human Arr[size];
    for (int i=0;i<size;i++)
        init(Arr[i]);
    for (int i=0;i<size;i++)
        print(Arr[i]);
    int key;
    cout << "Key to find: ";
    cin >> key;
    myFind(Arr, size, key);
    system("pause");
}
я вот так решил задачу
Нормально или нет?
dserp18
 Аватар для dserp18
0 / 0 / 0
Регистрация: 20.01.2013
Сообщений: 74
Записей в блоге: 2
15.06.2013, 12:42  [ТС]     с++. удаление по условию #3
спасибо большое, а можно как-нибудь через массив строк
newyork7776
 Аватар для newyork7776
346 / 339 / 79
Регистрация: 21.05.2013
Сообщений: 1,305
Завершенные тесты: 1
15.06.2013, 16:06     с++. удаление по условию #4
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
#include <iostream>
#include <cstdlib>
using namespace std;
void main()
{
    char fio[3][20];
    char prof[3][20];
    int voz[3];
    int k;
    for (int i=0;i<3;i++)
    {
        cout << "Enter FIO = ";cin >> fio[i];
        cout << "Enter profession = ";cin >> prof[i];
        cout << "Enter age = ";cin >> voz[i];
    }
system("cls");
    for (int i=0;i<3;i++)
    {
        cout << "\nFIO = " << fio[i];
        cout << "\n     profession = " << prof[i];
        cout << "\n     age = " << voz[i];
    }
 
cout << "\n";cout << "\n";cout << "\n";
 
cout << "Enter number [age] = ";cin >> k;
        for (int i=0;i<3;i++)
        {
            if (voz[i]>k) 
                    {
                        cout << "\nFIO = " << fio[i];
                        cout << "\n     profession = " << prof[i];
                        cout << "\n     age = " << voz[i];
                    }
        }
cout << "\n";
system("pause");
}
так или неправильно?
Yandex
Объявления
15.06.2013, 16:06     с++. удаление по условию
Ответ Создать тему
Опции темы

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