Технический форум

Технический форум (http://www.tehnari.ru/)
-   Помощь студентам (http://www.tehnari.ru/f41/)
-   -   Помогите найти ошибку в программе (http://www.tehnari.ru/f41/t50506/)

Vasa 15.04.2011 21:44

Помогите найти ошибку в программе
 
Задание: Вывести на экран N членов арифметической прогрессии.

#include <stdio.h>
#include <conio.h>
void main(void)
{
int N,a0,d,a,a_pred,i;
printf("Vvedite perviy chlen progressii ",a0);
scanf("%d",& a0);
printf("Vvedite neobhodimoe chislo chlenov progressii ",N);
scanf("%d",& N);
printf("Vvedite shag progressii ",d);
scanf("%d",& d);
a_pred=a0;
for(i=0;i<=N;i++)
{
a=a_pred+i*d;
printf("Vot=>%3d",a);
scanf("%d",&a);
a_pred=a;
}
}

AlexZir 16.04.2011 08:46

Цитата:

Арифмети́ческая прогре́ссия — числовая последовательность вида
a0, a0+d, a0+2d, a0+3d,...an+(n-1)d...
то есть последовательность чисел (членов прогрессии), каждое из которых, начиная со второго, получается из предыдущего добавлением к нему постоянного числа d (шага или разности прогрессии).
Если шаг d > 0, прогрессия является возрастающей; если d < 0, — убывающей.
Таким образом, у вас ошибка непосредственно в формуле вычисления члена прогрессии.
Цитата:

Сообщение от Vasa (Сообщение 504607)
a_pred=a0;
for(i=1;i<=N;i++)
{
a=a0+i*d;
printf("Vot=>%3d",a);
scanf("%d",&a);
a_pred=a;
}

Помеченное красным - удалить, желательно вместе с определением переменной в начале программы. Помеченное синим - привести в соответствие с выделением. :))

Vasa 16.04.2011 15:15

Спасибо за ответ,я испарив все,но он выводит на экран только первый член арифмет прогрессии а ост только после нажатия какой-то цифры

#include <stdio.h>
#include <conio.h>
void main(void)
{
int N,a0,d,a,i;
printf("Vvedite perviy chlen progressii ",a0);
scanf("%d",& a0);
printf("Vvedite neobhodimoe chislo chlenov progressii ",N);
scanf("%d",& N);
printf("Vvedite shag progressii ",d);
scanf("%d",& d);
for(i=1;i<=N;i++)
{
a=a0+i*d;
printf("Vot=>%3d",a);
scanf("%d",&a);
}
}

AlexZir 18.04.2011 05:55

Цитата:

Сообщение от Vasa (Сообщение 505018)
scanf("%d",&a);

А зачем вы пытаетесь в цикле считать значение переменной &a из стандартного потока ввода? Удалите эту строчку - и будет вам счастье :D


Часовой пояс GMT +4, время: 01:16.

Powered by vBulletin® Version 4.5.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.