Форум программистов, компьютерный форум, киберфорум
Наши страницы
C#: Web, ASP.NET
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
green apple
0 / 0 / 0
Регистрация: 05.10.2008
Сообщений: 31
#1

Как пронумеровать массив по строкам, при условии, что строковый элемент не равен пустому значению?

06.11.2008, 21:51. Просмотров 884. Ответов 2
Метки нет (Все метки)

Помогите пожалуйста !!!
Как пронумеровать массив по строкам, при условии, что строковый элемент не равен пустому значению???????????
Вывожу в массив рекордсет, из этого массива вывожу таблицу, тело которой надо пронумеровать по столбцам. То есть, чтобы получилось примерно так (там где прочерки подразумевается пустое поле из рекордсета):

| Col 1 | Col 2 | Col 3
----------------------------------
Row 1 | - | 1 | 1
Row 2 | 1 | - | 2
Row 3 | - | 2 | 3
Row 4 | 2 | 3 | 4

Код у меня вывода сейчас у меня выглядит так, он выводит эту таблицу, но без нумерации, выдает только значение/пусто:

<%
Dim aTable1Values
aTable1Values = Recordset.GetRows()
%>
<table>
<%Dim iRowLoop, iColLoop
For iRowLoop = 0 to UBound(aTable1Values, 2)
%>
<tr>
<%For iColLoop = 0 to UBound(aTable1Values, 1)
Response.Write('<td>' & aTable1Values(iColLoop, iRowLoop) & '</td>')
Next%>
</tr><%
Next
%>
</table>

ПОЖАЛУЙСТА, ПОМОГИТЕ !!!!!!!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.11.2008, 21:51
Ответы с готовыми решениями:

Сформировать одномерный массив, каждый элемент которого равен значению факториала
Необходимо сформировать одномерный массив, каждый элемент которого равен...

Создать массив: первый элемент равен A, второй равен B, а каждый последующий элемент равен сумме всех предыдущих
Даны целые числа N (&gt; 2), A и B. Сформировать и вывести цело- численный массив...

Сформировать массив С, каждый элемент которого равен максимальному значению соответствующих элементов массивов А и В
Задание курсовой: Составить программу по условию: даны два массива А и В....

Сформировать массив С, каждый элемент которого равен максимальному значению соответствующих элементов массивов А и В
Даны два массива А и В одинаковой размерности. Сформировать массив С, каждый...

Сформировать массив С, каждый элемент которого равен максимальному значению соответствующих элементов массивов А и В
1) Даны два массива А и В одинаковой размерности. Сформировать массив С, каждый...

2
al
07.11.2008, 04:02 #2
Код
<% 
   snull='-null-' 
   sempty='-empty-'
%>
<table border='1'>
   <tr>
   <% for each whatever in Recordset.fields %>
      <td><b><%=whatever.name %></b></td>
   <% next %>
   </tr>
<%
   alldata=Recordset.getrows
   Recordset.close
   set Recordset=nothing

   numcols=ubound(alldata,1)
   numrows=ubound(alldata,2)

   '----- REPAIR ARRAY
   for colcounter=0 to numcols
      myCounter=0 
      for rowcounter=0 to numrows
         if not ((isnull(alldata(colcounter,rowcounter))) or (trim(alldata(colcounter,rowcounter))='')) then 
            myCounter=myCounter+1
            alldata(colcounter,rowcounter)=myCounter & alldata(colcounter,rowcounter)
         else 
            alldata(colcounter,rowcounter)=alldata(colcounter,rowcounter)
         end if 
      next 
   next 
   '----- REPAIR ARRAY END

   for rowcounter=0 to numrows
%>
   <tr>
   <% 
      for colcounter=0 to numcols
         thisfield=alldata(colcounter,rowcounter)
         if isnull(thisfield) then thisfield=snull
         if trim(thisfield)='' then thisfield=sempty
   %>
      <td valign=top><%=thisfield %></td>
   <% next %>
   </tr>
<% next %>
</table>
писaл прямo здесь тaк чтo мoгут быть oшибки
green apple
0 / 0 / 0
Регистрация: 05.10.2008
Сообщений: 31
07.11.2008, 13:26  [ТС] #3
Здоровья тебе и долгих лет жизни, добрый дорогой luber !!!

Все работает, даже больше того, я второй день бился с TRANSFORM (его я выводит в рекордсет) запросом - не мог извлечь из него заголовки столбцов, и тут работает!

Привожу полный рабочий код для протокола:

<%
snull=' '
sempty=' '%>
<table border='1'>
<tr>
<% for each item in Rs.fields %>
<td><b><%=item.name %></b></td>
<% next %> </tr>
<%alldata=Rs.GetRows()
Rs.close
set Rs=nothing
numcols=ubound(alldata,1)
numrows=ubound(alldata,2)
'----- REPAIR ARRAY
for colcounter=0 to numcols
myCounter=0
for rowcounter=0 to numrows
if not ((isnull(alldata(colcounter,rowcounter))) or (trim(alldata(colcounter,rowcounter))='')) then
myCounter=myCounter+1
if alldata(colcounter,rowcounter) <> '1' then
alldata(colcounter,rowcounter)=alldata(colcounter,rowcounter)
else
alldata(colcounter,rowcounter)=myCounter
end if
else
alldata(colcounter,rowcounter)=alldata(colcounter,rowcounter)
end if
next
next
'----- REPAIR ARRAY END
for rowcounter=0 to numrows%>
<tr>
<%for colcounter=0 to numcols
thisfield=alldata(colcounter,rowcounter)
if isnull(thisfield) then thisfield=snull
if trim(thisfield)='' then thisfield=sempty %>
<td valign=top><%=thisfield%></td>
<% next %> </tr>
<% next %></table>

Здесь я что-то добавил - мне просто нужна только нумерация, без содержимого элемента массива. Результатом получается таблица с заголовками столбцов и строк, заполненная пустыми переменными либо пронумерованными сверху вниз элементами массива.

Еще раз большое СПАСИБО!
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.11.2008, 13:26

Даны двСформировать массив С, каждый элемент которого равен максимальному значению соответствующих элементов массивов А и В
Даны два массива А и В одинаковой размерности. Сформировать массив С, каждый...

Сформировать массив: первый элемент равен A, второй равен B, каждый последующий - равен сумме всех предыдущих
Помогите с задачей . Условие : даны числа А и В. Сформировать и вывести...

Заполнить массив: каждый четный элемент равен нулю, каждый нечетный - значению его индекса
заполнить массив А следующим образом:каждый четный элемент массива равен нулю...


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

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

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