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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 19.04.2014, 21:41   #1
Creative10
 
Регистрация: 03.04.2014
Сообщений: 5
По умолчанию Вывести массив на экран.

Ввести массив целых чисел, количество элементов которого заранее неизвестно. Признаком конца ввода массива является ввод числа, которое больше суммы всех уже введенных чисел. Вывести массив на экран.
Creative10 вне форума Ответить с цитированием
Старый 19.04.2014, 22:04   #2
ZX Spectrum-128
Участник клуба
 
Регистрация: 05.11.2013
Сообщений: 1,601
По умолчанию

Дубль 2:
И написать это всё на языке программирования ...?

Код:
var
  i,n,sum:integer;
  a:array of integer;
begin
  sum:=0;
  i:=0;
  n:=i+1;
  SetLength(a,n);
  writeln('Введите первое число:');
  readln(a[i]);
  repeat
    sum:=sum+a[i];
    writeln('Сумма равна ',sum);
    writeln('Введите очередное число:');
    i:=i+1;
    n:=i+1;
    SetLength(a,n);
    readln(a[i]);
  until a[i]>sum;
  dec(n);
  writeln;
  for i:=0 to n-1 do
    write(a[i],' ');
  readln;
end.

Последний раз редактировалось ZX Spectrum-128; 19.04.2014 в 22:41. Причина: Прикольная задачка. Мне понравилась.
ZX Spectrum-128 вне форума Ответить с цитированием
Старый 21.04.2014, 23:04   #3
Creative10
 
Регистрация: 03.04.2014
Сообщений: 5
По умолчанию

на языке СИ
Creative10 вне форума Ответить с цитированием
Старый 21.04.2014, 23:13   #4
alekopoko
Форумчанин
 
Регистрация: 03.04.2013
Сообщений: 167
По умолчанию

для твоей задачи надо мой char*name заменить на int name
у меня закачивается ввод при вводе слова "exit"
т.е. мою байду с strcmp убираешь и заменяешь на свой признак конца ввода элементов массива
Код:
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
struct Nameval 
{
	char*name;
}c;
struct Nvtab
{
	int nval; //текущие количество элементов
	int max;// под сколько элементов выделена память
	Nameval*nameval; 
}nvtab;
enum{NVINIT=1,NVGROW=2};

int addname(Nameval newname)
{
	Nameval*nvp;
	if(nvtab.nameval==NULL)
	{
		nvtab.nameval=(Nameval*)malloc(NVINIT*sizeof(Nameval));
		if(nvtab.nameval==NULL)
			return -1;
		nvtab.max=NVINIT;
		nvtab.nval=0;
	}
	else if(nvtab.nval>=nvtab.max)
	{
		nvp=(Nameval*)realloc(nvtab.nameval,(NVGROW*nvtab.max)*sizeof(Nameval));
		if(nvp==NULL)
			return -1;
		nvtab.max*=NVGROW;
		nvtab.nameval=nvp;
	}
	nvtab.nameval[nvtab.nval]=newname;
	return nvtab.nval++;
}

void main()
{
	int f=0;
	while(strcmp((char*)&c.name,"exit")!=0)
	{
		scanf("%s",&c.name);
		if(strcmp((char*)&c.name,"exit")!=0)
		f=addname(c);
	}
	int n=0;
	for(;n<=f;n++)
	printf("%s\n",&nvtab.nameval[n]);

}

Последний раз редактировалось alekopoko; 21.04.2014 в 23:15.
alekopoko вне форума Ответить с цитированием
Старый 29.04.2014, 03:19   #5
Creative10
 
Регистрация: 03.04.2014
Сообщений: 5
По умолчанию

Спасибо большое)
Creative10 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Задание: Сгенерировать и вывести на экран массив А 10x10 случайных реальных чисел в диапазоне от 1 до 9. Определить по А и вывести Don202 Помощь студентам 1 25.09.2013 11:26
Вывести линейный массив на экран. badname47 Паскаль, Turbo Pascal, PascalABC.NET 6 19.12.2011 15:40
отсортировать массив случайных чисел и вывести на экран. PAREN_DEFO Помощь студентам 1 27.05.2011 17:17
Сформировать и вывести на экран массив вещественных чисел K={ki}, i=1..b NitriNKa Помощь студентам 3 18.04.2009 15:38