Помогите дописать программу !!!!

Ответить

Код подтверждения
Введите код в точности так, как вы его видите. Регистр символов не имеет значения.

BBCode ВКЛЮЧЁН
[img] ВКЛЮЧЁН
[url] ВКЛЮЧЁН
Смайлики ОТКЛЮЧЕНЫ

Обзор темы
   

Развернуть Обзор темы: Помогите дописать программу !!!!

Re: Помогите дописать программу !!!!

Romeo » 12 дек 2017, 10:22

Мне кажется, человек просто не понял условия. Это слишком сложно для алгоритмической задачки. Скорее всего входные числа целые, а их нужно разделить на положительные и отрицательные.

Re: Помогите дописать программу !!!!

Слива » 12 дек 2017, 07:38

fabs() же вроде для дробных.

Re: Помогите дописать программу !!!!

Absurd » 08 дек 2017, 19:11

ДанилКомаров писал(а):Задача : Дан массив А , целые положительные числа переместить в массив С , а отрицательные в массив Б

Переменная типа float целой быть не может в силу свойств переменных с плавающей запятой. То есть вместо 3.0 у тебя будет 3.00000101, например. Можно проверять что расстояние от до ближайшего целого меньше некоего порогового значения:

Код: Выделить всё

if (abs(x - floor(x + 0.5)) < 0.0001) {
}

Re: Помогите дописать программу !!!!

Romeo » 08 дек 2017, 08:57

ДанилКомаров писал(а):Не хватает проверки на целостность положительных чисел(См условие задачи )
Что это значит? Три раза перечитал условие, никакого упоминания о проверке целостности не нашёл.

Помогите дописать программу !!!!

ДанилКомаров » 08 дек 2017, 01:06

Задача : Дан массив А , целые положительные числа переместить в массив С , а отрицательные в массив Б
Текст программы :
Не хватает проверки на целостность положительных чисел(См условие задачи )
Помогите пожалуйста))))

Код: Выделить всё

#include<locale.h> 
#include<stdio.h> 
#include<math.h> 
#include<conio.h> 

void main()
{
	setlocale(LC_ALL, "russian");
	float a[50], b[50], c[50];
	int i, n, k, p;
	printf("Количество элементов массива:");
	scanf_s("%d", &n);
	for (i = 0; i < n; i++) {
		printf("a[%d]=", i);
		scanf_s("%f", &a[i]);
	}
	for (i = 0, k = -1, p = -1; i < n; i++) {
		if (a[i] < 0) {
			k++; b[k] = a[i];
		}
		else { p++; c[p] = a[i]; }
	}if (k == -1)printf("Нету отрицательных элементов\n"); else {
		printf("Массив с отрицательными элементами:\n");
		for (i = 0; i < k + 1; i++) {
			printf("b[%d]=%f\n", i, b[i]);
		}
	}
	if (p == -1)printf("Нету положительных элементов"); else {
		printf("Массив с положительными элементами:\n");
		for (i = 0; i < p + 1; i++) {
			printf("c[%d]=%f\n", i, c[i]);
		}
	}
	_getch();
}

Вернуться к началу