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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 18.03.2009, 17:05   #1
world12_tk
Форумчанин
 
Регистрация: 24.02.2009
Сообщений: 269
По умолчанию си четные числа

Доброго времени суток.... У меня возникла не большая проблема.... Я написал программу на си, которая находит сумму четных чисел на интервале от m до n. Числа m,n задаются пользователем.
Вот исходник:
Код:
#include<stdio.h>
main()
{
int mn;
int n,ost;

  printf("введите m\n");
  scanf("%d",mn);
  printf("введите n\n");
  scanf("%d",n);
  ost=mn%2;
  if (!ost==0)
     mn++;
    while(!mn>n)
      mn+=2;
    printf ("сумма четных чисел %d \n",mn);
    getch();
}
дело в том, что программа не правильно работает.... помогите мне ее исправить....
Заранее благодарен.....
world12_tk вне форума Ответить с цитированием
Старый 18.03.2009, 17:23   #2
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Во-первых, в функцию scanf нужно передавать значение по ссылке.
Во-вторых, странная запись:
Код:
if (!ost==0)
Надо:
Код:
if (ost!=0)
или, на крайний случай, так:
Код:
if (!(ost==0))
Аналогично с условием в while.

И в-третьих, вы не считаете сумму четных чисел, а находите максимальное четное число на [m;n).

Код:
#include<stdio.h>
#include <conio.h>
int main()
{
int m,n,Sum=0;

  printf("введите m\n");
  scanf("%d",&m);
  printf("введите n\n");
  scanf("%d",&n);
  if(m%2!=0) m++;
  while(m<=n)
   {
    Sum += m;
    m += 2;
   }

    printf ("сумма четных чисел %d \n",Sum);
    getch();
    return 0;
}
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума Ответить с цитированием
Старый 18.03.2009, 17:30   #3
world12_tk
Форумчанин
 
Регистрация: 24.02.2009
Сообщений: 269
По умолчанию

гм...... вроде бы понятно... а вот что означает строчка
Цитата:
#include <conio.h>
точнее сама библиотека?
world12_tk вне форума Ответить с цитированием
Старый 18.03.2009, 17:33   #4
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Цитата:
а вот что означает строчка
Ну вы же используете функцию getch();. Для нее и нужно подключать conio.h
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

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


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Даны натуральные числа n,p, целые числа a1 , ... ,an. Наталья111 Фриланс 10 09.11.2010 20:09
Даны натуральные числа m,n. Посчитать сумму m последнего числа n. лялька Паскаль, Turbo Pascal, PascalABC.NET 6 25.12.2008 15:22
Задачка про массив - Из массива удалить четные элементы, стоящие после максимального Crookers Общие вопросы C/C++ 4 23.09.2008 19:35
Если все элементы матрицы четные, вычислить их произведение. Misho0k Паскаль, Turbo Pascal, PascalABC.NET 7 20.05.2008 22:51
ДАНЫ 4 ЧИСЛА X Y Z W составит программу найти произведение все положительные нечетные числа Woland-itn Паскаль, Turbo Pascal, PascalABC.NET 3 23.03.2008 21:49