Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Vasiliy-1821
13 / 13 / 0
Регистрация: 14.08.2011
Сообщений: 62
#1

Ошибки в процедуре для сравнений - C++

15.07.2012, 23:02. Просмотров 265. Ответов 4
Метки нет (Все метки)

Привет всем.!
Дорогие друзья,помогите разобраться пытаюсь скомпилить свой код, выдает ошибку в строке Cross = s1*s2<=0;
не могу понять что я делаю не так.
Заранее спасибо.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
#pragma hdrstop
//---------------------------------------------------------------------------
#pragma argsused
#include <iostream.h>
#include <conio.h>
#include <stdio.h>
#include <math.h>
 
using namespace std;
 
int s = 100;
long  i, j, N,W,E;
//---------------------------------------------------------------------------
void Vvod()
{
  cin>>N,W, E;
}
//---------------------------------------------------------------------------
float Cross(x1,y1,x2,y2)
{
  double s1,s2,t;
  x1 = x1*s;
  x2 = x2*s;
  y1 = y1*s;
  y2 = y2*s;
  t = N*s;
  s1 = t*(y1-W) - (E-W)*x1;
  s2 = t*(y2-W) - (E-W)*x2;
  Cross = s1*s2<=0;   //ощибка
}
//---------------------------------------------------------------------------
void Vivod()
{
  for (i = 0; i <= N-1; i++) {
    for (j = 0; i <= N-1; i++) {
      if (Cross(i,j,i+1,j)||Cross(i+1,j,i+1,j+1)||Cross(i,j,i,j+1) {
        count++;
      }
      cout<<count;
    }
  }
}
//---------------------------------------------------------------------------
int main ()
{
  freopen("Vvod.txt","r",stdin);
  freopen("Vivod.txt","w",stdout);
  input();
  solve();
  return 0;
}
Добавлено через 1 минуту
забыл по идее мне нужно bool Cross(x1,y1,x2,y2) процедура, для сравнений.
но выдает ошибку при обращении к процедуре.

Добавлено через 15 минут
Решил
C++
1
return  s1*s2;
.
Просто я в delphi работаю. Бывает трудно.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.07.2012, 23:02
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Ошибки в процедуре для сравнений (C++):

Два счетчика для обмена и сравнений для сортировки массива - C++
написал два счетчика для обмена и сравнений для сортировки массива.Проблема при выводе выводится сначала кучу чисел сортировки и обмена,а...

Счетчик сравнений для быстрой сортировки - C++
Добрый вечер. Взял сортировку из википедии void qSort(int arr7, int first, int last) { k = first; l =...

Куда в программе добавить счетчик для поиска количества перестановок и сравнений? - C++
void InsertSort(int *mas, int N) //сортировка вставками { int i,key=0,temp=0; int count_compare=0, count_swap; for (i=0; i&lt;N-1;...

Что можно подставить в переменную int для сравнений с другими числами? - C++
Задание: Дана матрица размером nxm. Упорядочить ее столбцы по возрастанию их наименьших элементов. Нужно подставить что-нибудь в...

График зависимость количества перестановок и сравнений от размерности массива для алгоритмов сортировки - C++
имеются массивы с размерностью от 1 до 20 с данными не отсортированными,частично отсортированными ,отсортированными в обратную сторону...

Скорость сравнений и присваиваний - C++
Доброго времени суток. Интересует вопрос: насколько примерно процесс сравнения двух элементов (напр. типа int) проходит быстрее, чем...

4
Aleator
65 / 60 / 3
Регистрация: 04.05.2011
Сообщений: 1,214
15.07.2012, 23:12 #2
А с
C
1
if (Cross(i,j,i+1,j)||Cross(i+1,j,i+1,j+1)||Cross(i,j,i,j+1)
как решил?
1
Vasiliy-1821
13 / 13 / 0
Регистрация: 14.08.2011
Сообщений: 62
15.07.2012, 23:17  [ТС] #3
Ну это математические координаты, нужно сравнивать точки вхождение.
сколько у прямой есть точек пересечения с различными квадратами.
Вроде как бы решил, но в файл не записывает. Опять что-то не так делаю. Аналитически вроде правильно решил
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
//---------------------------------------------------------------------------
 
#pragma hdrstop
 
//---------------------------------------------------------------------------
 
#pragma argsused
#include <iostream.h>
#include <conio.h>
#include <stdio.h>
#include <math.h>
using namespace std;
int s = 100;
 
long  i, j, N,W,E;
void Vvod()
{
cin>>N,W, E;
}
 
double Cross(x1,y1,x2,y2)
{
double s1,s2,t;
x1 = x1*s;
x2 = x2*s;
y1 = y1*s;
y2 = y2*s;
t = N*s;
s1 = t*(y1-W) - (E-W)*x1;
s2 = t*(y2-W) - (E-W)*x2;
 return  s1*s2<0;
}
int count = 0;
void Vivod()
{
 
 for (i = 0; i <= N-1; i++)
 
for (j = 0; i <= N-1; i++)
 
if (Cross(i,j,i+1,j) ||Cross(i+1,j,i+1,j+1)||Cross(i,j,i,j+1)||Cross(i+1,j+1,i,j+1))
 
 count++;
 
}
 
int main ()
{
freopen("Vivod.txt","w",stdout);
freopen("Vvod.txt","r",stdin);
 
    Vivod();
    Vvod();
    return 0;
}
0
nick42
Практикантроп
4119 / 2152 / 205
Регистрация: 23.09.2011
Сообщений: 4,596
15.07.2012, 23:35 #4
в аналитику я не вникал, но вот с функцией Vivod() что у вас? мало того, что второй цикл то ли по j, то ли по i - так еще и действий никаких: только счетчик увеличивается. А где же вывод в stdout?
1
Vasiliy-1821
13 / 13 / 0
Регистрация: 14.08.2011
Сообщений: 62
15.07.2012, 23:39  [ТС] #5
Точно второй нужно по j делать. перепутал. Спасибо.
0
15.07.2012, 23:39
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.07.2012, 23:39
Привет! Вот еще темы с ответами:

Отсортировать 5 чисел за 7 сравнений - C++
Отсортировать 5 чисел за 7 сравнений

Посимвольное сравнений чисел. - C++
Здравствуйте! Подскажите, как решить следующую задачу. Требуется посимвольно сравнить символы. Подсчитать в строке количество нулей и...

Количество сравнений в массиве - C++
И снова здравствуйте!) Есть рабочий код - поиск в двоичном массиве. Как модифицировать код, чтоб вычислить число сравнений при поиске?? ...

Количество обменов и сравнений в HeapSort - C++
Всем доброго времени суток! :) Помогите, пожалуйста, разобраться с задачей. Мне нужно подсчитать количество обменов и сравнений в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru