Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.11.2012, 22:05   #1
DIQUON
Форумчанин
 
Регистрация: 01.11.2012
Сообщений: 122
По умолчанию Вот код одномерного масива.Нужно чтобы он добавлял на начало 3 елемента со значением +2.Язык С или С++ ну или С Шарп.

Код:
#include <iostream> 
using namespace std; 
int main() 
{ 
int n, i, j; 
cout < < "Input number mas: "; 
cin > > n; 
int *b=new int[n]; 
cout < < "Input element mas: " < < endl; 
for( i=0;i < n;i++) 
cin > > b; 
cout < < "Output element mas" < < endl; 
for( j=0;j < n;j++) 
cout < < b[j ]< < ' '; 
cout < < endl; 

int p=0; 
int *a=new int[n-5]; 
for(i=0;i < n;i++) 

{ 
a[p]=b; 
p++; 
} 

for( i=0;i < n-5;i++) 
cout < < a < < ' '; 
cout < < endl; 

delete []b; 
int key; 
cin > > key; 
return 0; 
}
DIQUON вне форума Ответить с цитированием
Старый 08.11.2012, 22:07   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Когда добавлял? На каком этапе?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 08.11.2012, 22:11   #3
DIQUON
Форумчанин
 
Регистрация: 01.11.2012
Сообщений: 122
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Когда добавлял? На каком этапе?
Нужно чтобы он формиловал новый этап и новый масив например int*c=new int[n] и там на начало 3 елемента добавлял
DIQUON вне форума Ответить с цитированием
Старый 08.11.2012, 22:28   #4
rUs_LAN
Форумчанин
 
Регистрация: 15.11.2008
Сообщений: 577
По умолчанию

перепишите свое задание слово в слово а то ничего не понятно.
или напишите простой пример. Я понял так

введите количество елементов массива = 3
введите 1 елемнет 1
введите 2 елемнет 2
введите 3 елемнет 3

ваш массив: 1 2 3
ваш массив после трансформации 2 2 2 1 2 3

так чтоле?
rUs_LAN вне форума Ответить с цитированием
Старый 08.11.2012, 22:33   #5
DIQUON
Форумчанин
 
Регистрация: 01.11.2012
Сообщений: 122
По умолчанию

Цитата:
Сообщение от rUs_LAN Посмотреть сообщение
перепишите свое задание слово в слово а то ничего не понятно.
или напишите простой пример. Я понял так

введите количество елементов массива = 3
введите 1 елемнет 1
введите 2 елемнет 2
введите 3 елемнет 3

ваш массив: 1 2 3
ваш массив после трансформации 2 2 2 1 2 3

так чтоле?
Насколько я понимаю - да!)
DIQUON вне форума Ответить с цитированием
Старый 08.11.2012, 23:05   #6
rUs_LAN
Форумчанин
 
Регистрация: 15.11.2008
Сообщений: 577
По умолчанию

Код:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleCS
{
    class Program
    {

        
        static void Main(string[] args)
        {
            
            Console.WriteLine("Введите количество елементов");
            int size = int.Parse(Console.ReadLine());
            int[] arr = new int[size] ;
            
            for (int i = 0; i < size; i++)
            {
                Console.Write("Введите " + i + " елемент: \t");
                arr[i] = int.Parse(Console.ReadLine());
            }
            Console.WriteLine("\nВаш массив\n");
            for (int i = 0; i < size; i++)
            {
                Console.Write(arr[i] + "  ");
            }


            IEnumerable<int> result = new[] { 2, 2, 2 }.Concat(arr);

            Console.WriteLine("\n\nВаш массив после трансформации\n");

            foreach (var item in result)
            {
                Console.Write(item + " ");
            }
            Console.ReadKey();
        }
    }
}
rUs_LAN вне форума Ответить с цитированием
Старый 08.11.2012, 23:25   #7
DIQUON
Форумчанин
 
Регистрация: 01.11.2012
Сообщений: 122
По умолчанию

Спасибо большое,но будет намного лучше если вы мне немного обьясните)
Вот что значит слово arr?
вот этот рядок что значит? foreach (var item in result)
И это что? IEnumerable<int>
И последние,что значит? .Concat(arr)
буду благодарен за ответы)
DIQUON вне форума Ответить с цитированием
Старый 09.11.2012, 00:00   #8
Abstraction
Старожил
 
Аватар для Abstraction
 
Регистрация: 25.10.2011
Сообщений: 3,178
По умолчанию

arr - переменная типа int[] (одномерный массив int'ов)
foreach(var item in collection){...} - вид цикла в C#. Код будет выполнен по одному разу для каждого элемента, содержащегося в collection. Для некоторых коллекций порядок выполнения известен, для некоторых, вообще говоря, нет.
IEnumerable<int> - "множество элементов типа int", если по-простому. Под это описание подходят int[], List<int>, Set<int> и много другого. В данном случае, Concat не обещает вернуть именно массив (хотя реально его и возвращает, если не путаю), поэтому для возвращаемого результата и проговаривается более общий тип.
Concat - метод класса Array. new[]{2, 2, 2} создаёт новый объект типа Array, затем для него вызывается Concat и результат записывается в переменную result.
Abstraction вне форума Ответить с цитированием
Старый 09.11.2012, 00:56   #9
rUs_LAN
Форумчанин
 
Регистрация: 15.11.2008
Сообщений: 577
По умолчанию

ну все верно написано, можно только уточнить что concat ето
Код:
public static IEnumerable<TSource> Concat<TSource>(this IEnumerable<TSource> first, IEnumerable<TSource> second);
то есть это метод расширения который реализуют все классы которые поддерживают интерфейс IEnumerable <T> но это так, детали.
rUs_LAN вне форума Ответить с цитированием
Старый 09.11.2012, 18:43   #10
DIQUON
Форумчанин
 
Регистрация: 01.11.2012
Сообщений: 122
По умолчанию

Всем спасибо за ответы!)
DIQUON вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Что нужно заменить в этом масиве чтобы он вместо чисел индекс которых кратный 3 удалял все нечетные числа?С++ или С. DIQUON Помощь студентам 13 01.11.2012 19:00
Нужно сделать задачу по С++ пишите мне в личку или оставляйте свой скайп или почту тут (я заплачу) Sergey 1 Фриланс 2 21.02.2012 08:45
Мне нужно чтобы вы помогли найти ошибки или недочеты dark999 Помощь студентам 8 20.04.2011 19:31
нужна GUI программка на Си шарп с возможностью работы с БД(SQL или...) azizi Фриланс 7 30.04.2010 07:50
Требуеться чтобы эллипс был четким,или сплошной или цельной линией uriktus Помощь студентам 0 26.10.2009 01:33