Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/8: Рейтинг темы: голосов - 8, средняя оценка - 4.88
0 / 0 / 0
Регистрация: 22.12.2010
Сообщений: 32

Разработка программ с использованием указателей

16.01.2011, 23:31. Показов 1634. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Организовать ввод динамического массива размером N. Скопировать элементы большие числа а(а вводится пользователем) в другой динамически созданный массив. (кто может помогите с решением)
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
16.01.2011, 23:31
Ответы с готовыми решениями:

Разработка программ с использованием интерфейсов
Реализовать методы классов (абсолютно любые) с использованием интерфейсов. При помощи интерфейса IClonableсоздать копию объекта. название...

Разработка программ с использованием файлов
Помогите, пожалуйста, дополнить программу. Суть задачи: Записать в текстовый файл данные от трех друзьях - Фамилия, Имя, Возраст, Хобби....

Разработка программ с использованием массивов С#
Здравствуйте,прошу помощи в решении задачи пожалуйста Задана матрица A(n,n). Первый элемент каждого четного столбца заменить суммой...

10
 Аватар для MILAN
899 / 793 / 186
Регистрация: 21.02.2009
Сообщений: 1,722
16.01.2011, 23:41
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
#include <iostream>
 
using namespace std;
 
int main()
{
    int *arr,*arr1;
    int N=0,cnt=0,a,k=0;
    cout<<"Enter N -> ";
    cin>>N;
    arr=new int[N];
    cout<<"Enter a -> ";
    cin>>a;
    cout<<"Enter elements array"<<endl;
    for(int i=0; i<N; i++)
    {
        cout<<"Element "<<i+1<<"= ";
        cin>>arr[i];
         if(arr[i]>a)
         {
             cnt++;
         }
    }
    arr1=new int[cnt];
    cout<<"Array -> ";
    for(int i=0; i<N; i++ )
    {
        cout<<arr[i]<<"  ";
    }
    cout<<endl<<"New array -> ";
    for(int i=0; i<N; i++)
    {
        if(arr[i]>a)
        {
            arr1[k]=arr[i];
            cout<<arr1[k]<<"  ";
            k++;
        }
    }
    delete [] arr;
    delete [] arr1;
    system("pause");
    return 0;
}
1
В астрале
Эксперт С++
 Аватар для ForEveR
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
16.01.2011, 23:46
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
#include <vector>
#include <algorithm>
#include <iterator>
 
int main()
{
   std::vector<int> vec((std::istream_iterator<int>(std::cin)), std::istream_iterator<int>());
   std::cin.clear();
   std::cin.get();
   int a;
   std::cout<<"Enter a: ";
   std::cin>>a;
   std::vector<int> res;
   std::remove_copy_if(vec.begin(), vec.end(), std::back_inserter(res), [a](int t) -> bool {return t <= a;});
   std::copy(res.begin(), res.end(), std::ostream_iterator<int>(std::cout, " "));
   std::cout<<'\n';
   return 0;
}
Или так
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <vector>
#include <algorithm>
#include <iterator>
#include <functional>
 
int main()
{
   std::vector<int> vec((std::istream_iterator<int>(std::cin)), std::istream_iterator<int>());
   std::cin.clear();
   std::cin.get();
   int a;
   std::cout<<"Enter a: ";
   std::cin>>a;
   std::vector<int> res;
   std::remove_copy_if(vec.begin(), vec.end(), std::back_inserter(res), std::bind2nd(std::less_equal<int>(), a));
   std::copy(res.begin(), res.end(), std::ostream_iterator<int>(std::cout, " "));
   std::cout<<'\n';
   return 0;
}
1
0 / 0 / 0
Регистрация: 22.12.2010
Сообщений: 32
16.01.2011, 23:52  [ТС]
Спасибо большое, Вы такие "мозговитые")))) А можно эту же задачу только в C#

 Комментарий модератора 
"в C#" можно, но в соответствующем разделе. Туда и перенесу.
0
Почетный модератор
Эксперт .NET
 Аватар для NickoTin
8725 / 3677 / 404
Регистрация: 14.06.2010
Сообщений: 4,513
Записей в блоге: 9
17.01.2011, 00:36
Вот к примеру:
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
using System;
 
namespace ConsoleApplication0
{
    class Program
    {
        unsafe static void Main ( string[] args ) {
            Console.WriteLine("Enter array size:");
            int arrSz = Convert.ToInt32(Console.ReadLine());
            Console.WriteLine("Enter int A:");
            int A = Convert.ToInt32(Console.ReadLine());
 
            int val = 0;
            int i = 0, j = 0;
 
            int* arrSource = stackalloc int[arrSz];
 
            Console.WriteLine("Enter source array values:");
            while (i < arrSz && int.TryParse(Console.ReadLine(), out val)) {
                if (val > A) j++;
                arrSource[i++] = val;
            }
 
            int* arrDest = stackalloc int[j];
            j = 0;
 
            Console.WriteLine("\r\nSource array:");
            for (i = 0; i < arrSz; i++){
                if (arrSource[i] > A)
                    arrDest[j++] = arrSource[i];
                Console.Write(arrSource[i] + " ");
            }
 
            Console.WriteLine("\r\n\r\nResult array:");
            for (i = 0; i < j; i++)
                Console.Write(arrDest[i] + " ");
 
            Console.ReadLine();
        }
    }
}
p.s. Не советую злоупотреблять большой размерностью массивов в данном случае, может возникнуть переполнение стека.

Также можно такой вариант посмотреть:
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
using System;
using System.Runtime.InteropServices;
 
namespace ConsoleApplication0
{
    class Program
    {
        unsafe static void Main ( string[] args ) {
            Console.WriteLine("Enter array size:");
            int arrSz = Convert.ToInt32(Console.ReadLine());
            Console.WriteLine("Enter int A:");
            int A = Convert.ToInt32(Console.ReadLine());
 
            int val = 0;
            int i = 0, j = 0;
 
            int* arrSource = (int*)Marshal.AllocHGlobal(arrSz * sizeof(int));
 
            Console.WriteLine("Enter source array values:");
            while (i < arrSz && int.TryParse(Console.ReadLine(), out val)) {
                if (val > A) j++;
                arrSource[i++] = val;
            }
 
            int* arrDest = (int*)Marshal.AllocHGlobal(j * sizeof(int));
            j = 0;
 
            Console.WriteLine("\r\nSource array:");
            for (i = 0; i < arrSz; i++){
                if (arrSource[i] > A)
                    arrDest[j++] = arrSource[i];
                Console.Write(arrSource[i] + " ");
            }
 
            Console.WriteLine("\r\n\r\nResult array:");
            for (i = 0; i < j; i++)
                Console.Write(arrDest[i] + " ");
 
            Console.ReadLine();
 
            Marshal.FreeHGlobal((IntPtr)arrSource);
            Marshal.FreeHGlobal((IntPtr)arrDest);
        }
    }
}
В настройках проекта, в обоих случаях, разрешите unsafe код.
1
0 / 0 / 0
Регистрация: 22.12.2010
Сообщений: 32
07.02.2011, 20:55  [ТС]
а можно попроще, черз printf и scanf (мне как-то сложновато с Console)
0
 Аватар для Петррр
6721 / 3570 / 900
Регистрация: 28.10.2010
Сообщений: 5,937
07.02.2011, 21:03
Цитата Сообщение от Julli Посмотреть сообщение
printf и scanf
Это в c++. Console - это уже c#
0
0 / 0 / 0
Регистрация: 22.12.2010
Сообщений: 32
08.02.2011, 00:13  [ТС]
помогите, я незнаю console
0
 Аватар для exe-dealer
308 / 161 / 11
Регистрация: 07.06.2009
Сообщений: 538
08.02.2011, 00:20
язык уточни. с# или с++?
0
0 / 0 / 0
Регистрация: 22.12.2010
Сообщений: 32
08.02.2011, 00:29  [ТС]
в С# просто мы не работаем с console
0
 Аватар для exe-dealer
308 / 161 / 11
Регистрация: 07.06.2009
Сообщений: 538
08.02.2011, 00:34
идентификатор метода printf используется в С++, в C# таких имен нет.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
08.02.2011, 00:34
Помогаю со студенческими работами здесь

Разработка программ с использованием операторов ветвления и цикла
Ввести целочисленные координаты трех вершин прямоугольника, стороны которого параллельны координатным осям. Найти координаты его...

Разработка программ с использованием операторов ветвления и циклов
Ветвление. Составить программу для определения значения функции. Предусмотреть вывод сообщения о том, по какой ветви происходило...

Разработка программ с использованием операторов ветвления и цикла
1) Написать программу, которая вычисляет значение функции у: 2)Дана точка на плоскости с координатами (х, у). Составить программу,...

Разработка программ с использованием символов и строк постоянной длины
Нужно решить задачу. Найти наибольшее слово в тексте без буквы &quot;а&quot;

Разработка программ с использованием структур и перечислений - список преподавателей
8


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! */ #include <iostream> #include <stack> #include <cctype>. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru