С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Оксана Курбатов
18 / 0 / 1
Регистрация: 30.11.2011
Сообщений: 33
#1

Контест "Массивы. Вставка и удаление элементов" - C++

14.12.2011, 21:04. Просмотров 739. Ответов 6
Метки нет (Все метки)

Контест "Массивы. Вставка и удаление элементов"
0
Миниатюры
Контест "Массивы. Вставка и удаление элементов"  
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.12.2011, 21:04
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Контест "Массивы. Вставка и удаление элементов" (C++):

Контест "Массивы" - C++
Дан массив натуральных чисел из элементов. Необходимо заменить первый элемент, кратный , нулём. Формат входных данных В первой строке...

В зависимости от времени года "весна", "лето", "осень", "зима" определить погоду "тепло", "жарко", "холодно", "очень холодно" - C++
В зависимости от времени года "весна", "лето", "осень", "зима" определить погоду "тепло", "жарко", "холодно", "очень холодно". Я так...

Динамические одномерные массивы. Удаление и вставка элементов - C++
Задание: Сформировать одномерный массив целых чисел, используя датчик случайных чисел. Распечатать полученный массив. Удалить все элементы...

Класс "динамический массив" - добавление и удаление элементов в рантайме - C++
#ifndef ARRAY// if not defined #define ARRAY Class ARRAY{ Public ARRAY(); ~ ARRAY(); Void push_back (int...

"вставка" с "заменой" текста в файле. - C++
Здравствуйте. Решил для обретения бесценного опыта написать свой простенький парсер конфигов. Вообщем читает вполне себе читает...

Реализовать классы "Воин", "Пехотинец", "Винтовка", "Матрос", "Кортик" (наследование) - C++
Разработать программу с использованием наследования классов, реализующую классы: − воин; − пехотинец(винтовка); − матрос(кортик). ...

6
Jupiter
Каратель
Эксперт С++
6561 / 3982 / 227
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
14.12.2011, 21:15 #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
#include <stdio.h>
#include <stddef.h>
 
int main(void)
{
    size_t size, digit, i;
    int elem;
    FILE* in = fopen("input.txt", "r");
    FILE* out = fopen("output.txt", "w");
 
    fscanf(in, "%u %u", &size, &digit);
 
    for (i = 0; i < size; ++i)
    {
        fscanf(in, "%d", &elem);
        if (elem % 10 != digit)
            fprintf(out, "%d ", elem);
    }
 
    fclose(in);
    fclose(out);
    return 0;
}
0
YouDoItWrong
46 / 46 / 7
Регистрация: 29.10.2011
Сообщений: 154
14.12.2011, 21:21 #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
#include <vector>
#include <string>
#include <fstream>
 
using namespace std;
 
int main() {
    vector<string> vec;
    int n;
    string tmp;
    char ch;
    ifstream in("input.txt");
    in >> n >> ch;
    for(int i = 0; i < n; i++) {
        in >> tmp;
        vec.push_back(tmp);
    }
    in.close();
    for(int i = 0; i < vec.size(); i++) {
        tmp = vec[i];
        if(tmp[tmp.length() - 1] == ch) {
            vec.erase(vec.begin() + i);
        }
    }
    ofstream out("output.txt");
    for(int i = 0; i < vec.size(); i++) {
        out << vec[i] << " ";
    }
    return 0;
}
0
gooseim
Эксперт С++
508 / 412 / 37
Регистрация: 23.09.2010
Сообщений: 1,159
15.12.2011, 20:47 #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <algorithm>
#include <iostream>
 
void out(int *ar, size_t size)
{
   for(size_t i = 0; i < size; i++)
      std::cout << ar[i] << "\t";
   std::cout << std::endl;
}
 
int main()
{
   int array[] = {1, 2, 3, 4, 3, 5, 6};
   int len = sizeof(array)/ sizeof(int);
   out(array, len);
   int X = 3;
   len = std::remove(array, array + sizeof(array)/ sizeof(int), X) - array;
   out(array, len);   
}
0
Петррр
5972 / 3409 / 337
Регистрация: 28.10.2010
Сообщений: 5,926
15.12.2011, 20:52 #5
gooseim, а 11x, 123x, 432x сюда уже не попадают?
1
Питекантроп
246 / 140 / 6
Регистрация: 14.06.2010
Сообщений: 340
15.12.2011, 20:54 #6
Петррр, походу не попадают
как вариант
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
#include<iostream>
using namespace std; 
 
void fun(int X, int * arr, int &len)
{
    int i = len;
    while (--i >= 0)
    if (arr[i] % 10 == X) 
    {
      len--;
      for (int j = i; j<len; j++) arr[j] = arr[j+1];
    }
}
 
int main()
{
    int a[] = {1,4,44,68,10094,1,65,1001};
    int len = sizeof(a)/sizeof(int);
    for (int i = 0; i<len; i++) cout<<a[i]<<" ";
    cout<<endl;
    fun(4,a,len);
    for (int i = 0; i<len; i++) cout<<a[i]<<" ";
    return 0;
}
0
Петррр
5972 / 3409 / 337
Регистрация: 28.10.2010
Сообщений: 5,926
15.12.2011, 21:08 #7
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
#include <iostream>
#include <algorithm>
#include <ctime>
#include <list>
#include <iterator>
 
class forRemove{
    int x;
public:
    forRemove(int v):x(v){
    }
    bool operator()(int v){
        return v % 10 == x;
    }
};
 
int main()
{
    std::list<int> lst;
    srand(time(NULL));
    std::cout << "Count: ";
    int size;
    std::cin >> size;
    for(int i = 0; i < size; i++)
        lst.push_back(rand() % 20);
    std::copy(lst.begin(), lst.end(), std::ostream_iterator<int>(std::cout, " "));
    std::cout << std::endl;
    std::cout << "X: ";
    int x;
    std::cin >> x;
    std::list<int>::iterator it = std::remove_if(lst.begin(), lst.end(), forRemove(x));
    lst.erase(it, lst.end());
    std::cout << "New array: " << std::endl;
    std::copy(lst.begin(), lst.end(), std::ostream_iterator<int>(std::cout, " "));
    std::cout << std::endl;
    return EXIT_SUCCESS;
}
0
15.12.2011, 21:08
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.12.2011, 21:08
Привет! Вот еще темы с ответами:

"Удаление" элементов массива - C++
Приветствую. Задача - удалить, а с моими знаниями предмета заменить нулями, все четные элементы массива. (нули в конце) Например : 2...

Дан массив из "n" элементов.Выполнить добавление элементов "k" в конец массива - C++
Вот начало,а дальше не знаю как { setlocale(LC_ALL, &quot;Russian&quot;); int n; // кол-во элементов массива cout &lt;&lt; &quot;Введите размер...

вывести на друк слово "Одинаковые" если эти массивы полностью совпадают,и слово "Разные" в противоположном случае. - C++
Создать два символьных массива по 12 элементов , и вывести на друк слово &quot;Одинаковые&quot; если эти массивы полностью совпадают,и слово &quot;Разные&quot;...

Создать класс "Книга" с полями "название книги", "количество страниц", "год издания" - C++
Создать класс Книга поля: название книги,количество страниц,год издания методы: вычислить сколько лет книге и количество дней прошедших...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.