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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 22.10.2009, 12:56   #11
nariku
Пользователь
 
Регистрация: 22.10.2009
Сообщений: 23
По умолчанию

Цитата:
Сообщение от Sweta Посмотреть сообщение
Вообще то у Вас в задании Integer.
По этому переменные д.б. целые, т.е. int
Код:
#include <stdio.h>
#include <conio.h>
void main()
{
int n,x;
printf("Введите количество тонн=",n);
scanf("%d",&n);
x=(n-n%1000)/1000;
printf("Количество полных тонн %d",x);
}
до 20000 работает а дальше выдает какие-то отрицательные числа
nariku вне форума Ответить с цитированием
Старый 22.10.2009, 13:15   #12
Sweta
Форумчанин
 
Регистрация: 22.11.2007
Сообщений: 664
По умолчанию

Код:
x=(n-n%1000)/1000;
попробуйте заменить на х=n/k;
Объявив int k=1000;
или объявить
unsigned long x, n;
Неприятности приходят и уходят, а жизнь продолжается!

Последний раз редактировалось Sweta; 22.10.2009 в 13:20.
Sweta вне форума Ответить с цитированием
Старый 22.10.2009, 13:35   #13
nariku
Пользователь
 
Регистрация: 22.10.2009
Сообщений: 23
По умолчанию

все равно ни хочет работать правильно!
nariku вне форума Ответить с цитированием
Старый 22.10.2009, 13:45   #14
Sweta
Форумчанин
 
Регистрация: 22.11.2007
Сообщений: 664
По умолчанию

Даже в таком варианте?
Код:
#include <stdio.h>
#include <conio.h>
void main()
{
long int n,x;
int k=1000;
printf("Введите количество тонн=",n);
scanf("%d",&n);
x=n/k;
printf("Количество полных тонн %d",x);
}
Неприятности приходят и уходят, а жизнь продолжается!
Sweta вне форума Ответить с цитированием
Старый 22.10.2009, 13:49   #15
netrino
Участник клуба
 
Аватар для netrino
 
Регистрация: 15.07.2008
Сообщений: 1,933
По умолчанию

Цитата:
Сообщение от Sweta Посмотреть сообщение
Даже в таком варианте?
Код:
#include <stdio.h>
#include <conio.h>
void main()
{
long int n,x;
int k=1000;
printf("Введите количество тонн=",n);
scanf("%d",&n);
x=n/k;
printf("Количество полных тонн %d",x);
}
Даже в таком и на то есть причины ) При чтении длинного int(long int) использовать в строке форматирования нужно %ld. В первом принтф второго параметра быть не должно в данном случае. Объявлять переменную k нет ни малейшего смысла.
Рабочий вариант:
Код:
#include <stdio.h>
#include <conio.h>

int main()
{
    unsigned long int n;

    printf("Введите количество тонн = ");
    scanf("%ld",&n);
    printf("Количество полных тонн = %ld\n", n/1000);

    getch();

    return 0;
}

Последний раз редактировалось netrino; 22.10.2009 в 13:55.
netrino вне форума Ответить с цитированием
Старый 22.10.2009, 13:59   #16
nariku
Пользователь
 
Регистрация: 22.10.2009
Сообщений: 23
По умолчанию

Цитата:
Сообщение от netrino Посмотреть сообщение
Даже в таком и на то есть причины ) При чтении длинного int(long int) использовать в строке форматирования нужно %ld. В первом принтф второго параметра быть не должно в данном случае. Объявлять переменную k нет ни малейшего смысла.
Рабочий вариант:
Код:
#include <stdio.h>
#include <conio.h>

int main()
{
    unsigned long int n;

    printf("Введите количество тонн = ");
    scanf("%ld",&n);
    printf("Количество полных тонн = %ld\n", n/1000);

    getch();

    return 0;
}
в данном случае программа запускаеться но ввести не чего нельзя сразу вылетает
nariku вне форума Ответить с цитированием
Старый 22.10.2009, 14:02   #17
netrino
Участник клуба
 
Аватар для netrino
 
Регистрация: 15.07.2008
Сообщений: 1,933
По умолчанию

Цитата:
Сообщение от nariku Посмотреть сообщение
в данном случае программа запускаеться но ввести не чего нельзя сразу вылетает
Какой компилятор? Когда вылетает показывает ли какую-нибудь ошибку? Я проверил у себя на VS2008 и BC++ 3.1 - всё работает
netrino вне форума Ответить с цитированием
Старый 22.10.2009, 14:04   #18
nariku
Пользователь
 
Регистрация: 22.10.2009
Сообщений: 23
По умолчанию

Цитата:
Сообщение от netrino Посмотреть сообщение
Какой компилятор? Когда вылетает показывает ли какую-нибудь ошибку? Я проверил у себя на VS2008 и BC++ 3.1 - всё работает
Borland C++ for Dos
не просто вылетает.
nariku вне форума Ответить с цитированием
Старый 22.10.2009, 14:11   #19
nariku
Пользователь
 
Регистрация: 22.10.2009
Сообщений: 23
По умолчанию

Цитата:
Сообщение от netrino Посмотреть сообщение
Какой компилятор? Когда вылетает показывает ли какую-нибудь ошибку? Я проверил у себя на VS2008 и BC++ 3.1 - всё работает
попробывал на Dev-C++ 4.9.9.2
выдает количество тонн = |d
nariku вне форума Ответить с цитированием
Старый 22.10.2009, 14:11   #20
netrino
Участник клуба
 
Аватар для netrino
 
Регистрация: 15.07.2008
Сообщений: 1,933
По умолчанию

И даже приглашения к вводу нет?
Код:
#include <stdio.h>
#include <conio.h>

int main()
{
    unsigned long int n;

    flushall();
    printf("Введите количество тонн = ");
    scanf("%ld",&n);
    printf("Количество полных тонн = %ld\n", n/1000);

    getch();

    return 0;
}
Попробуйте так.
netrino вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
4 задания по Паскалю. Евгений2 Помощь студентам 14 22.05.2009 15:18
4 задания по qBasic matsode Помощь студентам 11 11.05.2009 22:39
3 небольших задания Hoogian Паскаль, Turbo Pascal, PascalABC.NET 11 11.05.2009 16:04
2 задания на множества Lirik18 Паскаль, Turbo Pascal, PascalABC.NET 4 01.05.2009 11:45