Warning: mysqli::__construct(): (HY000/1203): User howardkn already has more than 'max_user_connections' active connections in D:\Inetpub\vhosts\howardknight.net\al.howardknight.net\includes\artfuncs.php on line 21
Failed to connect to MySQL: (1203) User howardkn already has more than 'max_user_connections' active connections
Warning: mysqli::query(): Couldn't fetch mysqli in D:\Inetpub\vhosts\howardknight.net\al.howardknight.net\index.php on line 66
Article <666d1c61$0$953$882e4bbb@reader.netnews.com>
Deutsch   English   Français   Italiano  
<666d1c61$0$953$882e4bbb@reader.netnews.com>

View for Bookmarking (what is this?)
Look up another Usenet article

Path: ...!news-out.netnews.com!postmaster.netnews.com!us14.netnews.com!not-for-mail
X-Trace: DXC=mOaXh:Fh>iL=LX4bSbU0nMHWonT5<]0TMQ;nb^V>PUfF=AnO\FUBY[@nF54O@^\1?D_og>=_9<RdIZXMZ9Rc<mgEnk9`jfQW@>MdDioXmM8L1AOXeKkS2`?jI
X-Complaints-To: support@blocknews.net
Date: Sat, 15 Jun 2024 00:45:24 -0400
MIME-Version: 1.0
User-Agent: Betterbird (Windows)
Subject: Re: "undefined behavior"?
Newsgroups: comp.lang.c
References: <666a095a$0$952$882e4bbb@reader.netnews.com>
 <v4d4hm$1rjc5$1@dont-email.me> <8734ph7qe5.fsf@nosuchdomain.example.com>
 <666a226d$0$951$882e4bbb@reader.netnews.com> <v4erpi$29e2g$2@dont-email.me>
 <666b0451$0$953$882e4bbb@reader.netnews.com> <v4hu1b$2ve93$3@dont-email.me>
 <666ccccb$0$973$882e4bbb@reader.netnews.com>
 <87r0cz3rx5.fsf@nosuchdomain.example.com>
 <666d0f4f$0$979$882e4bbb@reader.netnews.com>
 <87msnm505i.fsf@nosuchdomain.example.com>
Content-Language: en-US
From: DFS <nospam@dfs.com>
In-Reply-To: <87msnm505i.fsf@nosuchdomain.example.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Lines: 47
Message-ID: <666d1c61$0$953$882e4bbb@reader.netnews.com>
NNTP-Posting-Host: 127.0.0.1
X-Trace: 1718426721 reader.netnews.com 953 127.0.0.1:41057
Bytes: 2955

On 6/14/2024 11:56 PM, Keith Thompson wrote:
> DFS <nospam@dfs.com> writes:
>> On 6/14/2024 9:39 PM, Keith Thompson wrote:
>>> DFS <nospam@dfs.com> writes:
>>> [...]
>>>> During conversion, I got a Python error I don't remember seeing in the past:
>>>>
>>>> "TypeError: list indices must be integers or slices, not float"
>>>>
>>>> because division returns a float, and some of the array addressing was
>>>> like this: nums[i/2].
>>> [...]
>>> C's "/" operator yields a result with the type of the operands
>>> (after
>>> promotion to a common type).
>>> Python's "/" operator yields a floating-point result.  For C-style
>>> integer division, Python uses "//".  (Python 2 is more C-like.)
>>
>> I was surprised python did that, since every division used in the
>> array addressing results in an integer.
>>
>> After casting i to an int before any array addressing, // works.
> 
> I'm surprised you needed to convert i to an int.  I would think that
 > just replacing nums[i/2] by nums[i//2] would do the trick,
 > as long> as i always has an int value (note Python's dynamic typing). 
  If i
> is acquiring a float value, that's probably a bug, given the name.

I spotted the issue.  Just prior to using i for array addressing I said:
i = N/2.

The fix is set i = int(N/2)



> But if you want help with your Python code, comp.lang.python is the
> place to ask.

Thanks for your help, but David Brown is a Python developer and I'll ask 
him python questions here whenever I care to.

In the recent past you were involved in discussions on perl, Fortran and 
awk, among other off-topics.

Rules for thee but not for me?