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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 07.06.2009, 12:22   #1
Skrip
Пользователь
 
Аватар для Skrip
 
Регистрация: 04.06.2009
Сообщений: 45
По умолчанию Одномерный массив

Помогите определить ошибку! Надо найти сумму элементов массива, расположенных между первым и последним элементами:
Код:
//Лабораторная работа №4
//Обработка одномерных массивов
//

#include <iostream.h>
#include <windows.h>
#include <math.h>
#include <stdio.h>

char*Rus (const char*text);


void main()

{
	double E[100],sum=0;
	int n,a,b,i,k=0,c=0,min=0;
	
	printf(Rus("Введите количество элементов массива: "));
	scanf("%d", &n);

	printf(Rus("\nВведите элементы массива:\n"));
	for(i=0; i<n; i++)cin>>E[i];//ввод элементов массива
    
    printf(Rus("\nВведеный массив:\n"));
	for(i=0; i<n; i++)printf("%4.2f  ",E[i]);//вывод массива

    for(i=n;i>0;i--)//Поиск первого положительного элемента
		if(E[i]>=0)a=i;
		
	for(i=0;i<n;i++)//Поиск последнего положительного элемента
		if(E[i]>=0)b=i;
	
	if(E[0]>E[a] && E[0]<E[b])sum+=E[0];//проверка условия для нулевого элемента
    for(i=1; i<n; i++)
	{
		if(E[i]<E[min])min=i;//поиск минимального элемента
		if(E[i]>E[a] && E[i]<E[b])sum+=E[i];
	}
	printf(Rus("\nКоличество элементов между первым и последним положительным: "));
	printf("%d\n",sum);
	printf(Rus("Минимальный элемент: "));
	printf("E[%d]=%f",min,E[min]);
}
char bufRus[256];
char*Rus (char const*text)
{
	CharToOem(text,bufRus);
	return bufRus;
}

//Skrip\\
Я спокойный, вежливый и уравновешенный человек
Skrip вне форума Ответить с цитированием
Старый 07.06.2009, 12:41   #2
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Код:
//Лабораторная работа №4
//Обработка одномерных массивов
//

#include <iostream.h>
#include <windows.h>
#include <math.h>
#include <stdio.h>

char*Rus (const char*text);


int main()

{
	double E[100],sum=0;
	int n,a,b,i,k=0,c=0,min=0;
	
	printf(Rus("Введите количество элементов массива: "));
	scanf("%d", &n);

	printf(Rus("\nВведите элементы массива:\n"));
	for(i=0; i<n; i++)cin>>E[i];//ввод элементов массива
    
    printf(Rus("\nВведеный массив:\n"));
	for(i=0; i<n; i++)printf("%4.2f  ",E[i]);//вывод массива

 for(i=0;i<n;i++)//Поиск первого положительного элемента
		if(E[i]>=0) { a=i; break; }
		
	for(i=n-1;i>=0;i--)//Поиск последнего положительного элемента
		if(E[i]>=0) { b=i; break; }
	
	if(E[0]>E[a] && E[0]<E[b])sum+=E[0];//проверка условия для нулевого элемента
 for(i=a+1; i<b; i++)
	{
		if(E[i]<E[min])min=i;//поиск минимального элемента
		//if(E[i]>E[a] && E[i]<E[b])sum+=E[i];
		sum += E[i];
	}
	printf(Rus("\nСумма элементов между первым и последним положительным: "));
	printf("%lf\n",sum);
	printf(Rus("Минимальный элемент: "));
	printf("E[%d]=%lf",min,E[min]);
	cin.get();
	cin.get();
}

char bufRus[256];
char*Rus (char const*text)
{
	CharToOem(text,bufRus);
	return bufRus;
}
И вы там разберитесь, что же все-таки нужно выводить ) Сумму, или количество элементов.
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Одномерный массив (СИ) ManInBlack Помощь студентам 8 08.06.2013 17:43
С# одномерный массив Gigatrest Помощь студентам 15 31.05.2009 19:08
Одномерный массив Алeксандр Паскаль, Turbo Pascal, PascalABC.NET 3 22.01.2009 22:24
Одномерный массив. Dmitrij Паскаль, Turbo Pascal, PascalABC.NET 1 28.11.2008 19:54
одномерный массив ldx Паскаль, Turbo Pascal, PascalABC.NET 4 06.06.2008 17:45