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

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

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 02.12.2013, 17:58   #1
Denis3
Пользователь
 
Регистрация: 15.03.2013
Сообщений: 17
По умолчанию Из C# в C++

Привет,

Кто нибудь может переделать код из C# в C++?

Нам задали задание. На форуме оно уже было написано на C# - мне надо C++. Кто нибудь может помочь, а то я в C# не разбираюсь.

Буду очень благодарен за помощь.
Denis3 вне форума Ответить с цитированием
Старый 02.12.2013, 17:59   #2
Denis3
Пользователь
 
Регистрация: 15.03.2013
Сообщений: 17
По умолчанию

Код:
using System;
using System.Collections.Generic;
using System.Text;
 
namespace sdflkjsdl
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.Write("Введите размерность массива: ");
            int size = int.Parse(Console.ReadLine());
            double[] massiv = new double[size];
            Console.Clear();
            Console.Write("1 - Заполнить массив вручную" +
                "\n2 - Заполнить массив случайными числами" +
                "\n\nВыберите нужный пункт меню: ");
            string s = Console.ReadLine();
            switch (s)
            {
                case "1":
                    Console.Clear();
                    for (int i = 0; i < size; i++)
                    {
                        Console.Write("Massiv[" + i + "]: ");
                        massiv[i] = double.Parse(Console.ReadLine());
                    }
                    break;
                case "2":
                    Console.Clear();
                    Console.Write("Введите максимальное возможное значение случайного числа при заполнении массива: ");
                    int maxr = int.Parse(Console.ReadLine());
                    Console.Write("Введите минимальное возможное значение случайного числа при заполнении массива: ");
                    int minr = int.Parse(Console.ReadLine());
                    Random rnd = new Random();
                    for (int i = 0; i < size; i++)
                    {
                        massiv[i] = rnd.Next(minr, maxr-1) + rnd.NextDouble();
                    }
                    break;
                default:
                    Console.WriteLine("Необходимо было ввести 1 или 2...");
                    break;
            }
Denis3 вне форума Ответить с цитированием
Старый 02.12.2013, 18:00   #3
Denis3
Пользователь
 
Регистрация: 15.03.2013
Сообщений: 17
По умолчанию

Продолжение:

Код:
Console.Clear();
            Console.WriteLine("Заполненный массив:");
            for (int i = 0; i < size; i++)
            {
                Console.Write(massiv[i] + " ");
            }
            Console.Write("\n\n1 - Вычислить номер минимального по модулю элемента массива" +
                "\n2 - Вычислить сумму модулей элементов массива, расположенных после первого отрицательного элемента" +
                "\n3 - Сжать массив, удалив из него все элементы, величина которых находится в интервали от a до b. Освободившиеся в конце элементы заполнить нулями." +
                "\n\nВыберите нужный пункт меню: ");
            string swi = Console.ReadLine();
            switch (swi)
            {
                case "1":
                    Console.Clear();
                    Console.WriteLine("Заполненный массив:");
                    for (int i = 0; i < size; i++)
                    {
                        Console.Write(massiv[i] + " ");
                    }
                    double min = Math.Abs(massiv[0]);
                    int index = 0;
                    for (int i = 0; i < size; i++)
                    {
                        if (min > Math.Abs(massiv[i]))
                        {
                            min = Math.Abs(massiv[i]);
                            index = i;
                        }
                    }
                    Console.WriteLine("\n\nИндекс минимального по модулю элемента: {0}", index);
                    break;
                case "2":
                    Console.Clear();
                    Console.WriteLine("Заполненный массив:");
                    for (int i = 0; i < size; i++)
                    {
                        Console.Write(massiv[i] + " ");
                    }
                    double sum = 0;
                    bool f = false;
                    for (int i = 0; i < size; i++)
                    {
                        if (f)
                            sum += Math.Abs(massiv[i]);
                        if (massiv[i] < 0)
                            f = true;
                    }
                    Console.WriteLine("\n\nСумма модулей элементов массива, расположенных после первого отрицательного элемента: " + sum);
                    break;
                case "3":
                    Console.Clear();
                    Console.WriteLine("Заполненный массив:");
                    for (int i = 0; i < size; i++)
                    {
                        Console.Write(massiv[i] + " ");
                    }
                    Console.Write("Введите A: ");
                    int a = int.Parse(Console.ReadLine());
                    Console.Write("Введите B: ");
                    int b = int.Parse(Console.ReadLine());
                    Console.WriteLine("Сжатый массив:");
                    for (int i = 0; i < size; i++)
                    {
                        if ((massiv[i] >= a) & (massiv[i] <= b))
                        {
                            massiv[i] = 0;
                        }
                        Console.Write(massiv[i] + " ");
                    }
                    break;
                default:
                    Console.Clear();
                    Console.WriteLine("Необходимо было ввести 1, 2 или 3...");
                    break;
            }
            Console.WriteLine("\nДля выхода из программы нажмите [Enter]");
            Console.ReadLine();
        }
    }
}
Denis3 вне форума Ответить с цитированием
Ответ


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