841 / 736 / 342
Регистрация: 22.09.2012
Сообщений: 5,034
1

Испортил массив, а он все равно работает

11.03.2016, 19:12. Показов 525. Ответов 6
Метки нет (Все метки)

Решал вопрос вот этому юзеру: Сформировать одномерный массив из утроенных четных элементов матрицы
Ну по крайней мере пытался..

Вот код что я ему накидал:
Delphi
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
procedure TForm1.Button1Click(Sender: TObject);
var
  arr1: array[1..100, 1..100] of integer;
  arr2: array[1..10000] of integer;
  n, i, j: integer;
  s: string;
begin
     n := 0;
 
  for i := 1 to 100 do
    for j := 1 to 100 do
    begin
      arr1[i, j] := random(100);
    end;
 
  for i := 1 to 100 do
    for j := 1 to 100 do
    begin
      if (arr1[i, j] mod 6 = 0) and (arr1[i, j] mod 2 = 0) then
      begin
        n := n + 1;
        arr2[n] := arr1[i, j];
        s := s + (inttostr(arr2[n]) + ', ');
      end;
    end;
  showmessage(s);
end;
Я массив arr2 порчу, а он не портится и компилируется даже, что это вобще странноо..
Я его портил поразному и arr2: array[1..1000] ставил и arr2: array[1..100] и даже arr2: array[1..10]
И он все равно откомпировал, странно...

Давайте выясним эту ситуацию, как так можно то..

Добавлено через 57 минут
Цитата Сообщение от NIKOLAYY Посмотреть сообщение
arr2: array[1..10000]
И это как то странно как он еще может рабоать???

я сделал arr2: array[1..10] и он отработал, странно..
Вышел за предел массива и он работает!.. Я чо то запутался..

Добавлено через 35 минут
Ну че там? Где я пролетел то??

Добавлено через 30 минут
Ни чо не пойму...
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
11.03.2016, 19:12
Ответы с готовыми решениями:

не работает в ворде веб компонент,и скачав обновление ow 11 не работает все равно
проблема с веб элементами и обновлениями на них))

Шифровальщик vault испортил все файлы
Добрый день, собственно проблема написана в заголовке темы, все *.doc(x) и *.xlsx все зашифрованы....

Кириллица [UTF-8] [локализация] - все равно не работает
В текстовом редакторе поставил UTF-8 и только после этого написал кириллицей сообщение на вывод в...

Скрипт после коллизии, все равно работает
Скрипт после коллизии, все равно работает. Как отключить скрипт, после завершения коллизии?

6
2649 / 2270 / 279
Регистрация: 24.12.2010
Сообщений: 13,725
11.03.2016, 19:16 2
Цитата Сообщение от NIKOLAYY Посмотреть сообщение
он все равно откомпировал, странно
Что странно ? Конкретно ?
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
32488 / 20974 / 8115
Регистрация: 22.10.2011
Сообщений: 36,245
Записей в блоге: 7
11.03.2016, 19:17 3
Цитата Сообщение от NIKOLAYY Посмотреть сообщение
Вышел за предел массива и он работает!
Чего бы ему не работать? Если опция контроля границ отключена (чем очень многие так любят кичиться - поотключают все проверки в настройках, и гордятся, что программа на микросекунду быстрее считает) - данные будут писаться в любом случае. Только вот потом либо стек будет испорчен, либо другие данные. Включи контроль границ - будет вылет с ошибкой при попытке выйти за границу массива.
0
139 / 137 / 66
Регистрация: 15.05.2012
Сообщений: 515
11.03.2016, 19:21 4
Поставить галочку в Project Options -> Compiller -> Runtime Errors -> Range Checking для контроля индексных выражений
0
841 / 736 / 342
Регистрация: 22.09.2012
Сообщений: 5,034
11.03.2016, 19:25  [ТС] 5
Я изменил второй масив на arr2: array[1..10]
Код все равно отработал, хотя это очень странно..
По идее я ожидал вылететь за предел массива от програамы и получить ошибку, но это странно ошибок я не получал...
Может я количество элеиентов стутал со значением элементов массива?
Но это вряд ли как бы что я совсем дурак что ли?
И поэтому все это странно....
0
2649 / 2270 / 279
Регистрация: 24.12.2010
Сообщений: 13,725
11.03.2016, 19:27 6
Цитата Сообщение от NIKOLAYY Посмотреть сообщение
Я изменил второй масив на arr2: array[1..10]
Код все равно отработал
Ты оглобли-то не разворачивай)
Изначально ты заявил про странности в компиляции кода
он все равно откомпировал, странно
0
841 / 736 / 342
Регистрация: 22.09.2012
Сообщений: 5,034
12.03.2016, 03:42  [ТС] 7
Да что то вобще так и не что не понял..
Что там происходит то, даже в отладчике хотел запуститб чтоб цикл проверить по шагам, но как бы зачем..
Первый раз такой странный код вижу, который написан вроде правильно, запустиш его вроде правильно, измениш код немножко и он все равно работает, это вобще как то странно...

================================================== ========
Я его изменял так чтоб он не работал, запускал а он все равно работает...
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.03.2016, 03:42
Помогаю со студенческими работами здесь

Жертва Acronis DD 11 ! или как я все испортил!
Здравствуйте уважаемые форумчане хотел бы поделиться проблемой по поводу программного обеспечения и...

Интернет подключён через Wifi, но всё равно не работает!
На ноутбуке интернет подключён через Wifi, но всё равно не работает! Через телефон подключился всё...

Форма регистрации и логина по видео урокам - все равно не работает
Братва помогите по форме логина , не могу найти ошибку выходить это Fatal error: Can't use...

Авторизация в СТИМ написана ну все равно не работает то что я хочу
Вот уже две недели спустя парюсь и все никак здесь я пробивал написать прием трейда в Steam. Код...

Ошибок нет , но код все равно не работает , в чем дело? VS 2019 C++
#include <iostream> using namespace std; int main() { setlocale(0, ""); int a, b; cout <<...

Скрипт работает как надо, но все равно появляется ошибка Warning: Missing argument
Здравствуйте друзья! Помогите пожалуйста мне разобраться с ошибкой Warning: Missing argument 1...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru