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

Удалить из массива тех абонентов, телефон которых начинается с цифры 3 - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Найти элемент матрицы с наименьшей разностью компонент http://www.cyberforum.ru/cpp-beginners/thread1147243.html
Найти элемент матрицы с наименьшей разностью компонент. Элементы матриц имеют вид пар (a,b), компоненты a и b которых инициализируются случайными числами. Используя объявления массивов через указатели на тип, шаблоны функций и структур, решить задачу для двух матриц с элементами типа структура, элементы первой матрицы имеют тип (int,int), а второй - (double,double).
C++ Определить количество строк, не содержащих ни одного элемента с нулевыми компонентами Определить количество строк, не содержащих ни одного элемента с нулевыми компонентами. Элементы матриц имеют вид пар (a,b), компоненты a и b которых инициализируются случайными числами. Используя объявления массивов через указатели на тип, шаблоны функций и структур, решить задачу для двух матриц с элементами типа структура, элементы первой матрицы имеют тип (int,int), а второй -... http://www.cyberforum.ru/cpp-beginners/thread1147237.html
Одномерный массив, сортировка C++
Вот задание. Надеюсь на помощь. Вот что у самого получилось... Что делать дальше? //--------------------------------------------------------------------------- #include <vcl.h> #pragma hdrstop #include <vcl.h> #include <cstdlib> #include <ctime> #include <iostream>
Подскажите новичку C++
Подскажите новичку какой интегрированной средой разработки пользоваться и как ?
C++ Изменение данных в txt http://www.cyberforum.ru/cpp-beginners/thread1147206.html
Всем доброго времени. Есть txt, нужно считать с него инфу в структуру, если подходит по условию сделать изменения и записать в тот же файл. Путем проб и ошибок сделал так, считываю ифну из файла(проверяю на условие) и записываю во временный файл, произвожу удаление оригинального файла и переименовываю временный файл в оригинальный. Проблема состоит в том что если проект переложить эти строки...
C++ Поиск в массиве строк Добрый день Возник глупый вопрос. Пытаюсь сделать поис в строковом массиве не как не получается подскажите что не такк. Сам массив char *cK_Words = {"procedure", "case", "of", "end", "begin", "if", "than", "inherited", "Boolean", "Word", "nil"}; Пытаюсь найти это char cTest = {"than"}; for(int i = 0; i <11; i++) { n = memcmp(cTest,*cK_Words,sizeof(cTest)); подробнее

Показать сообщение отдельно
kaig
0 / 0 / 0
Регистрация: 22.01.2013
Сообщений: 22
13.04.2014, 18:28     Удалить из массива тех абонентов, телефон которых начинается с цифры 3
Сформировать массив записей, описывающих следующую таблицу:
---------------------------------------------------------------
Фамилия ! Адрес ! N телефона
--------------------------------------------------------------

Удалить из массива тех абонентов, телефон которых начинается с цифры 3. Скорректированный массив вывести в прежней форме.
Массив записей сформировал, но не знаю как выполнение удаление абонентов, сделал таким образом: вывел всех абонентов, чей номер не начинается с цифры 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
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
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
#include "stdafx.h"
#include "iostream"
#include "conio.h"
#include "string.h"
using namespace std;
 
struct Abonent 
{
    char fio[40];
    char address[40];
    int phone;
};
 
int first_num(int num)
{
    int res = 0;
    while (num)
    {
        res = num % 10;
        num /= 10;
    }
    return res;
}
 
 
Abonent reg_abonent(int i);
void vivod_abon(Abonent *Danye);
void svivod_abon(Abonent *Danye);
 
int main()
{
    // заполняем данными
    Abonent Danye[5] = {
        "a1","a1",1111,
        "a2","a2",2222,
        "a3","a3 ",3333
    };
 
    //вводим абонентов с клавиатуры
    for (int i = 3; i < 5; i++)
    {
        Danye[i] = reg_abonent(i);
    }
 
    vivod_abon(Danye);
    svivod_abon(Danye);
 
    _getch();
    return 0;
}
 
Abonent reg_abonent(int i)
{
    Abonent a; 
 
    char c;
    cout << endl << "Vvedite abonenta " << i+1 << " \n";
    cout << "       fio: ";
    cin.getline(a.fio, 40);
 
    cout << "   address: ";
    cin.getline(a.address, 40);
 
    cout << "     phone: ";
    cin >> a.phone;
    cin.get(c);
 
    return a;
}
 
 
 
void vivod_abon(Abonent *Danye)
{
 
 
        printf("----------------------------------------------------------------\n");
        printf("|%20s|%20s|%20s|\n","fio","address","phone");
        printf("----------------------------------------------------------------\n");
    for (int i = 0; i < 5; i++) 
    {
        Abonent *tekysh = &Danye[i];
        if (strlen(tekysh->fio) == 0) 
        { 
            continue;
        }
        printf("|%20s|%20s|%20d|\n",  tekysh->fio, tekysh->address, tekysh->phone);     
    }
        printf("----------------------------------------------------------------\n");
}
 
 
 
void svivod_abon(Abonent *Danye)
{
        cout <<"Skorrektirovannyj spisok abonentov" <<endl;
        printf("----------------------------------------------------------------\n");
        printf("|%20s|%20s|%20s|\n","fio","address","phone");
        printf("----------------------------------------------------------------\n");
            for (int i = 0; i < 5; i++)
                if (first_num(Danye[i].phone) != 3)
 
        printf("|%20s|%20s|%20d|\n",  Danye[i].fio, Danye[i].address, Danye[i].phone);
        printf("----------------------------------------------------------------\n");
}
копаю в сторону, кажется, тут я вообще ничего не понимаю
C++
1
2
3
4
5
            for (int i = 0; i < 5; i++)
                if (first_num(Danye[i].phone) == 3)
                    {
                        Danye[i] = Danye[i + 1];
                    }
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 09:04. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru