Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Проблема коомпилятора. выдаёт ошибку 
:(
    Опции темы
Vorobey
Дата 7.1.2006, 01:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 20.11.2005

Репутация: -1
Всего: нет



Может Название темы не отражает её суть, но у меня почему то капризничает компилятор. Решил написать простейшую программу с оператором while.
Вот её код.

//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop
#include <stdio.h>
#include <conio.h>
//---------------------------------------------------------------------------

#pragma argsused
int main(int argc, char* argv[])
{
int lower,upper,step,a,b;
lower=1;
upper=100;
step=2;
a=lower;
while(a <= upper)
{
b=a*2;
printf("%4.0f %4.0f\n",a,b);
a=a+step;
}
getch()

} *
//---------------------------------------------------------------------------

Компилятор (поправте если не правильно написал) выдаёт ошибку в строке с * (это поставил я только чтобы показать строку. В коде звёздочки нет)

Ошибка пишется [C++ Error] Unit1.cpp(24): E2379 Statement missing ;

Объясните в чём проблема??? Пытался много раз. Всегда вылезает.
Было и раньше когда я писал программу по книге. Там тоже была жта проблема, но менее назойливая. Я тогда случайно передвинул последнюю фигурную скобку, но вернул обратно. ошибка выдавалась. Но когда я переписал код (не трогая скобку) всё стало ОК.

Это сообщение отредактировал(а) Vorobey - 7.1.2006, 01:25
PM MAIL   Вверх
volvo877
Дата 7.1.2006, 01:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2072
Регистрация: 15.11.2004

Репутация: 13
Всего: 116



Vorobey,
точку с запятой после getch() ставить не пробовал? Это ж не Дельфи, в конце-то концов smile
PM MAIL   Вверх
Fin
Дата 7.1.2006, 01:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Дракон->Спать();
**


Профиль
Группа: Участник
Сообщений: 687
Регистрация: 4.1.2006

Репутация: нет
Всего: 10



Код

getch()

Компилятор же ясно говорит, пропушен знак ; . т.е. ты не закрыл оператор. Как правило в таких случаях компиляторы ругаются на следуюшую строку. Так как считают ее продолжением предыдушей.
Да кстати зачем в консольное приложение ташить библиотеку vcl.h?


--------------------
Пролетал мимо.
PM MAIL   Вверх
Vorobey
Дата 7.1.2006, 01:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 20.11.2005

Репутация: -1
Всего: нет



Если честно то эта библиотека у меня по умолчанию прописывается. Сам удивился. в демке этого не было.

А про точку с запятой сглупил. ИЗВИНЯЮСЬ. Я сам новичёк, вот и проглядел. Спасибо.
Всё заработало.
Правда у меня в обоих столбиках нули. Я планировал 2 столбика. 1 это нечётные числа от 1 до 100. 2 это 1 столбик умноженный на 2.

Когда записал

int lower,upper,step;
float a,b;

то всё заработало. Можете объяснить почему. В книге не нашёл. Объясните попроще пожалуйста. Я так понял что float используется для чисел со знаками после запятой, а int для целых.

но сдесь то пременные a и и получаются целые. вот я их и отнёс к типу int. В чём тогда проблема???
Почему были нули??? и что изменилось???

Это сообщение отредактировал(а) Vorobey - 7.1.2006, 01:56
PM MAIL   Вверх
TIGERоX
Дата 7.1.2006, 02:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


начинающий...
*


Профиль
Группа: Участник
Сообщений: 59
Регистрация: 7.9.2005

Репутация: 1
Всего: 1



printf("%4.0f %4.0f\n",a,b) - проблема в этом "f" указывает на то что а и b должны быть типа float
посмотри справку на эту функцию!
пробуй так printf("%d %d\n",a,b) a,b - int
PM MAIL   Вверх
zarden
Дата 8.1.2006, 21:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 6.1.2006

Репутация: нет
Всего: нет



тип int используется при работе с целыми числами
тип float - с дробными, т. е с цифрами после запятой)))
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++ Builder"
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по С++ Builder обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Настоятельно рекомендуем заглянуть в DRKB (Delphi Russian Knowledge Base) - крупнейший в рунете сборник материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C++ Builder | Следующая тема »


 




[ Время генерации скрипта: 0.1420 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.