HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #4641  
Старый 08.01.2010, 21:27
оlbaneс
Moderator - Level 7
Регистрация: 05.11.2007
Сообщений: 894
С нами: 9744746

Репутация: 1474


По умолчанию

Цитата:
Сообщение от Fata1ex  
koder., прочитайте начало книги. Я отчетливо помню, что там отдельно оговаривается, почему в текстах книги используется данный вариант и когда применяется другой. Книга НЕ устарела, Ra$cal НЕ ошибается, вы НЕ правы да и автора зовут вовсе НЕ Джон.
ну чтобы в вижуал студии не писать постоянно пространство имен std:
сделали чтоб сразу обозначить using namespace std;
 
Ответить с цитированием

  #4642  
Старый 09.01.2010, 23:06
cupper
Постоянный
Регистрация: 06.06.2007
Сообщений: 575
С нами: 9963746

Репутация: 180


По умолчанию

что выведет программа ?
Код:
#include <iostream>
using namespace std;

int main(){
	int p=1;
	int r=2;
	int q = (p+r)/2;
	cout<<q<<endl;
}
а теперь не поленились и скомпелировали это и написали сюда что непосредственно вывелось. Это не флуд, не спам, не флешмоб, это реальный вопрос.

PS. я вот был уверен что это выдаст мне 2

Последний раз редактировалось cupper; 09.01.2010 в 23:11..
 
Ответить с цитированием

  #4643  
Старый 09.01.2010, 23:10
herfleisch
Участник форума
Регистрация: 07.01.2009
Сообщений: 237
С нами: 9126697

Репутация: 97
По умолчанию

Цитата:
Сообщение от cupper  
что выведет программа ?
Код:
#include <iostream>
using namespace std;

int main(){
	int p=1;
	int r=2;
	int q = (p+r)/2;
	cout<<q<<endl;
}
а теперь не поленились и скомпелировали это и написали сюда что непосредственно вывелось. Это не флуд, не спам, не флешмоб, это реальный вопрос.
Выведет единицу. Т.к. int разделить на int получится int. Не компилировал. Помню, говорили об этом на первом курсе университета.

Чтобы получить 1.5, нужно написать так:

Код:
...
int p=1;
int r = 2;

float q = (p+r)/(float)2;
...
Я прав?

Последний раз редактировалось herfleisch; 09.01.2010 в 23:12..
 
Ответить с цитированием

  #4644  
Старый 09.01.2010, 23:19
Double2
Новичок
Регистрация: 09.01.2010
Сообщений: 20
С нами: 8598418

Репутация: 2
По умолчанию

Такая вот проблема. Совсем недавно, буквально вчера, начал учить С++. Решил написать небольшую прогу. Собственно вот код.
Код:
#include <iostream>
int main()
{
  int a, b, c;
  m: std::cout << "Введите первое число \n";
  std::cin >> a;
  std::cout << "Введите второе число \n";
  std::cin >> b;
  c=a+b;
  if(a!=0 and b!=0)
{
  std::cout << "Сумма a и b =";
  std::cout << c;
}
  else
  {
  std::cout << "Какое-то из чисел равно нулю! Введите другие числа!";
  goto m;
  }
  return 0;
}
При запуске, ругается на 12 строку(это If) и выдает ошибку
"untitled1.cpp": E2377 If statement missing ) in function main() at line 10

Я читал, что это из-за того, что компилятор не определяет закрывающую скобку, но она на месте! Если что, юзаю Borland C++BuilderX
 
Ответить с цитированием

  #4645  
Старый 09.01.2010, 23:21
herfleisch
Участник форума
Регистрация: 07.01.2009
Сообщений: 237
С нами: 9126697

Репутация: 97
По умолчанию

Цитата:
Сообщение от Double2  
Такая вот проблема. Совсем недавно, буквально вчера, начал учить С++. Решил написать небольшую прогу. Собственно вот код.
Код:
#include <iostream>
int main()
{
  int a, b, c;
  m: std::cout << "Введите первое число \n";
  std::cin >> a;
  std::cout << "Введите второе число \n";
  std::cin >> b;
  c=a+b;
  if(a!=0 and b!=0)
{
  std::cout << "Сумма a и b =";
  std::cout << c;
}
  else
  {
  std::cout << "Какое-то из чисел равно нулю! Введите другие числа!";
  goto m;
  }
  return 0;
}
При запуске, ругается на 12 строку(это If) и выдает ошибку
"untitled1.cpp": E2377 If statement missing ) in function main() at line 10

Я читал, что это из-за того, что компилятор не определяет закрывающую скобку, но она на месте! Если что, юзаю Borland C++BuilderX
Напиши так: if((a!=0) && (b!=0))

Это тебе те паскаль
 
Ответить с цитированием

  #4646  
Старый 09.01.2010, 23:22
Double2
Новичок
Регистрация: 09.01.2010
Сообщений: 20
С нами: 8598418

Репутация: 2
По умолчанию

Оу... Спасибо
 
Ответить с цитированием

  #4647  
Старый 09.01.2010, 23:26
herfleisch
Участник форума
Регистрация: 07.01.2009
Сообщений: 237
С нами: 9126697

Репутация: 97
По умолчанию

Цитата:
Сообщение от Double2  
Оу... Спасибо
Если уж начал учить C/C++, отвыкай от меток и операторов goto. Они - признак плохого тона. Онотоле таке не одобряе )))
 
Ответить с цитированием

  #4648  
Старый 09.01.2010, 23:28
Double2
Новичок
Регистрация: 09.01.2010
Сообщений: 20
С нами: 8598418

Репутация: 2
По умолчанию

А чем можно заменить goto?
 
Ответить с цитированием

  #4649  
Старый 09.01.2010, 23:30
cupper
Постоянный
Регистрация: 06.06.2007
Сообщений: 575
С нами: 9963746

Репутация: 180


По умолчанию

[QUOTE=herfleisch]Выведет единицу. Т.к. int разделить на int получится int. Не компилировал. Помню, говорили об этом на первом курсе университета.
[/qoute]
Вот какого хера выведет еденицу, ведь блин всегда при делении с остатком если это int округлялось в большую сторону, а щас на те и 1.

PS. 1.5 мне ненадо получать %)
 
Ответить с цитированием

  #4650  
Старый 09.01.2010, 23:31
Double2
Новичок
Регистрация: 09.01.2010
Сообщений: 20
С нами: 8598418

Репутация: 2
По умолчанию

Если не ошибаюсь, то округляется тогда, когда после точки идет число больше 5. Извиняюсь, если не прав
 
Ответить с цитированием
Ответ



Предыдущая тема Следующая тема
Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Часто задаваемые вопросы по MySQL Серый PHP 5 28.12.2006 18:26
Интернетчики задали российскому президенту очень странные вопросы podkashey Мировые новости. Обсуждения. 4 07.07.2006 16:53
Вопросы по Ipb 2.0 Voodoo_People Уязвимости CMS / форумов 26 15.02.2005 22:57



Здесь присутствуют: 4 (пользователей: 0 , гостей: 4)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.