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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 30.04.2012, 00:08   #1
M_arisha
Пользователь
 
Регистрация: 02.12.2011
Сообщений: 24
По умолчанию Массив, Си

Вот такая задачка:
разработать программу для ввода последовательности из n<255 вещественных чисел. Пользователь должен вводить значения в формате:
номер_в_последовательности - значение.
Если значение с таким номером уже введено, то необходимо выдавать соответствующий запрос на подтверждение операции перезаписи и изменять старое значение (записывать "поверх" его новое значение), если такое подтверждение получено. Вывести множество введенных новых элементов (их номера) и множество измененных элементов.
и вот такой код:
Код:
#include <stdio.h>
#include <conio.h>
int i,s,n;
double m[254];
void main()
{
	for(int i=0;i<254;i++)
		m[i]=0;
	s=0;
	while(s<254)
	{
	printf("input number:\n");
	scanf("%d",&n);
	if(n<0)break;
	printf("input element:\n");
	scanf("%lf",&m[n]);
	 }
	for(i=1;i<255;i++)
	printf("%lf\t",m[i]);
}
Помогите, пожалуйста, реализовать операцию перезаписи.
M_arisha вне форума Ответить с цитированием
Старый 30.04.2012, 00:43   #2
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,430
По умолчанию

Сами значения нужны?
"Множество измененных элементов" - сами элементы или тоже номера?
Вы пока ответьте на мои вопросы, а я подумаю над программой
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA на форуме Ответить с цитированием
Старый 30.04.2012, 00:50   #3
M_arisha
Пользователь
 
Регистрация: 02.12.2011
Сообщений: 24
По умолчанию

думаю, множество самих элементов в обоих случаях
спасибо)
M_arisha вне форума Ответить с цитированием
Старый 30.04.2012, 01:01   #4
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,430
По умолчанию

Код:
#include <stdio.h>
#include <conio.h>

int i,n,pos[254];
double m[254],t;
char c;

int
main()
{
    for(i=0; i<254; i++)
        pos[i]=0;
    do
    {
        printf("Input position from 0 to 253 and element:\n");
        scanf("%d - %lf",&n,&t);
        if(n<0)break;
        pos[n]++;
        if (pos[n]>1)
        {
            printf("Do you want to overwrite this element? (Yes - 1/No - 0)\n");
            scanf("%d",&i);
            if (i)
                m[n]=t;
            else
                pos[n]--;
        }
        else
            m[n]=t;
    }
    while (n>=0 && n<254);

    printf("Positions of new elements\n");
    for (i=0; i<254; i++)
        if (pos[i]==1)
            printf("%d ",i);
    printf("\nPositions of overwrited elements\n");
    for (i=0; i<254; i++)
        if (pos[i]>1)
            printf("%d ",i);
    printf("\nSaved elements\n");
    for (i=0; i<254; i++)
        if (pos[i]>0)
            printf("%lf ",m[i]);
    return 0;
}
Выводятся номера введенных и не измененных элементов.
Номера измененных элементов.
Текущие элементы, которые хранятся в массиве.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA на форуме Ответить с цитированием
Старый 30.04.2012, 01:04   #5
M_arisha
Пользователь
 
Регистрация: 02.12.2011
Сообщений: 24
По умолчанию

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


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
С# задан массив 5х5. сформировать массивы А и В. в массив А поместить элементы с четными индексами, в массив В с нечетны Koksa Помощь студентам 0 10.10.2011 11:26
Запись координат в массив в реал тайм, Как записать координаты в массив Dark19 Visual C++ 2 21.06.2011 18:45
Из массив А получить массив В, удвоив все нечётные элементы удвоены ( на Pascal) KARTER Помощь студентам 1 18.06.2011 19:58
Массив - Нужно написать массив и распечатать на экран с конца в начало(язык С++) econ Помощь студентам 1 29.05.2011 22:02