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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 07.10.2012, 20:35   #1
D92
Пользователь
 
Регистрация: 07.05.2012
Сообщений: 29
По умолчанию Дан массив А размера N.

Дан массив А размера N. Сформировать новый массив В того же размера, элементы которого определяются следующим образом: Вк=2*Ак, если Ак<5, Ак/2 в противном случае.
Как написать эту программу без использования динамической памяти???
Текст программы:
Код:
#include <stdio.h>
#include <conio.h>

int main()
{
	double *A,*B;
	int n;
      printf("Vvedite razmer massiva:\n");
	scanf("%d",&n);
	A=new double[n];
	B=new double[n];
       printf("Vvedite elementi massiva:\n");
	for(int i=0;i<n;i++)
	{
		scanf("%lf",&A[i]);
		B[i]= A[i] < 5 ? 2*A[i] : A[i]/2;
		printf("%lf\n",B[i]);
	}
      delete A,B;
	getch();
	return 0;
}

Последний раз редактировалось Stilet; 07.10.2012 в 22:08.
D92 вне форума Ответить с цитированием
Старый 07.10.2012, 22:14   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

А чем динамика не угодила?
Впрочем есть варианты:
Код:
	
	const int n=10;
        double A[10],B[10];
       printf("Vvedite elementi massiva:\n");
	for(int i=0;i<n;i++)
	{
		scanf("%lf",&A[i]);
		B[i]= A[i] < 5 ? 2*A[i] : A[i]/2;
		printf("%lf\n",B[i]);
	}
	getch();
	return 0;
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 07.10.2012, 22:28   #3
D92
Пользователь
 
Регистрация: 07.05.2012
Сообщений: 29
По умолчанию

Спасибо!!! А в задании же не указано, что размер массива 10. Можно ли так писать?)
А можно в СИ использовать new?
D92 вне форума Ответить с цитированием
Старый 07.10.2012, 22:39   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
А в задании же не указано, что размер массива 10. Можно ли так писать?)
Ну раз не указано то думаю да.
Цитата:
А можно в СИ использовать new?
Неа. malloc() используй.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 08.10.2012, 16:40   #5
D92
Пользователь
 
Регистрация: 07.05.2012
Сообщений: 29
По умолчанию

Спасибо!!!!!
D92 вне форума Ответить с цитированием
Старый 08.10.2012, 20:05   #6
D92
Пользователь
 
Регистрация: 07.05.2012
Сообщений: 29
По умолчанию

А можно эту задачу так написать????:
Код:
#include <stdio.h>
#include <conio.h>
 
int main()
{
    int n;
	printf("Vvedite razmer massiva:\n");
    scanf("%d",&n);
	double A[n];
    double B[n];
	printf("Vvedite elementi massiva:\n");
    for(int i=0;i<n;i++)
    {
        scanf("%lf",&A[i]);
        B[i]= A[i] < 5 ? 2*A[i] : A[i]/2;
        printf(" %lf\n",B[i]);
    }
    getch();
    return 0;
}


___________
Код нужно оформлять по правилам:
тегом [CODE]..[/СODE] (это кнопочка с решёточкой #)
Не забывайте об этом!
Модератор.

Последний раз редактировалось Serge_Bliznykov; 09.10.2012 в 08:41.
D92 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Дан целочисленный массив размера N. C# Ginger_93 Помощь студентам 1 14.01.2012 15:05
Дан целочисленный массив размера N, содержащий ровно два одинаковых элемента. Найти номера одинаковых элементов и вывести эти номе Alexar Makken Паскаль, Turbo Pascal, PascalABC.NET 1 23.12.2011 22:07