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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 24.05.2009, 19:07   #1
Simply_angel
 
Регистрация: 27.04.2009
Сообщений: 5
По умолчанию Длинная арифметика.Связанные списки

Остались две задачи никак не могу решить...Можно либо на си, либо на паскале...
1)Составить программу для вычисления точного значения суммы первых n членов последовательности чисел, кратных данному натуральному числу k (n > MaxInt(32767)).

2)Многочлен Р(x) = аn·х^n + аn-1·х^(n-1) + ... + а1·х + a0
с целыми коэффициентами можно представить в виде списка,
причем если at = 0, то соответствующее звено не включа-
ется в список.
P -> [n|An]-> [n-1|An-1]-> ...-> [1|A1]-> [0|Ao]-> nil
Ниже показано представление многочлена
S(x) = 52х^40 - 3х^8 + x.
S -> [40|52] -> [8|-3] -> [1|1] -> nil
Описать на языке Паскаль тип данных, соответствующий та-
кому представлению многочленов, и определить следующие
процедуры и функции для работы с этими списками-много-
членами:
15.2
Функцию Znach(P, x), вычисляющую значение многочлена Р в
целочисленной точке x.

Пожалуйста помогите...Заранее большое спаибо
Все фантазии порождаются страхами
Simply_angel вне форума Ответить с цитированием
Старый 25.05.2009, 19:09   #2
Simply_angel
 
Регистрация: 27.04.2009
Сообщений: 5
По умолчанию

#include<iostream.h>
#include<stdlib.h>
#include<conio.h>
#include<stdio.h>
struct mnogochlen {
int k;//коэффициент
int step;//степень
struct mnogoghlen*next;//указатель на следующий элемент
};


/*cell Znach(cell*r,int x)
{ int i,k=1,n,z;

for(i=n;i<0;i--){
z=r.A*k+z;
k=k*x; }}*/ //функция явно неправильная(((//
/*функция ввода элементов*/
struct mnogochlen*input(void)
{ int m=0,n,i;
struct cell*p;
p=(struct cell*)malloc(sizeof(struct cell));
printf("Введите количество элементов");scanf("%d",&n);

if(m<=100){
printf("Введите степень");
scanf("%d",&p->step);
printf("Введите коэффициент");
scanf("%d",&p->k);
if(p->k= =0)//если коэффициент равен нулю, то он должен не включаться в список
{ free(p);
return NULL;
}
if((p->k= =0)&&(p->step= =0)) //если и коэффициент и степень 0,то прекращается ввод
{ free(p);
break;
} m++; }
p->pc=input();
return p;
}
/*функция вывода*/
void output(struct mnogochlen*p)
{
if(p= =NULL)
{
printf("\nСписок исчерпан");
return;
}
printf("\nstepen=%d\tkoev=%d",p->step,p->k);
output(p->pc);
}

int main()
{

struct cell*beg=NULL;


printf("Введите значение структур\n");
beg=input();
printf("Содержимое списка:\n");
output(beg);
getch();
}
Все фантазии порождаются страхами
Simply_angel вне форума Ответить с цитированием
Старый 25.05.2009, 19:10   #3
Simply_angel
 
Регистрация: 27.04.2009
Сообщений: 5
По умолчанию

Помогите пожалуйста...Я никак не могу додуматься как это сделать,если не трудно объясните
Все фантазии порождаются страхами
Simply_angel вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Связанные списки в C++ Rembo Общие вопросы C/C++ 47 11.07.2016 12:45
Длинная арифметика: деление Vadik(R) Помощь студентам 1 27.03.2009 12:08
Длинная арифметика (Нахождение квадратного корня) 08ekhiv1 Помощь студентам 6 06.03.2009 15:48
Длинная арифметика (нужна помощь) RAVAL)) Паскаль, Turbo Pascal, PascalABC.NET 7 25.10.2008 15:13
Длинная арифметика DmT Помощь студентам 2 06.10.2007 22:43